This is my first time with Web services. I have to develop web services in java which should be having good WS-* standards, should loosely-coupled, scalable, highly secure, fast response time. I know I've to consider trade-offs. I have checked on some frameworks like Axis2, CXF, Spring WS. Please share your experiences and views on these frameworks and other frameworks, which will help me in deciding which one to go to.
-
Do you need to develop a Web Service server, or client?Simon B. Jensen– Simon B. Jensen2009-01-09 15:38:07 +00:00Commented Jan 9, 2009 at 15:38
-
Actually both. I require to create some web services which apart from doing stuff will call another web service.kaychaks– kaychaks2009-01-09 17:16:17 +00:00Commented Jan 9, 2009 at 17:16
6 Answers
I would also recommend taking a look at JAX-WS 2.0. It is also easy to use with very little configuration and annotations. Mark Hansen's book does a good job explaining SOA using jax-ws.
Comments
Metro is the JAX-WS reference implementation with support for various WS-* specification. I find it easy to understand and use. It provides interoperability with the Microsoft .NET WCF stack and integration with Spring, Netbeans, Maven2 and ant.
Metro is fully supported on Glassfish and both can be installed together easily with the latest Glassfish v3 prelude (commercial support available from Sun).
The Metro's homepage reference a web services stack comparison at the Apache WS Wiki.
Comments
I personally like CXF because it's very easy to setup and it performs very well. I also, agree with "LiorH" and don't like Axis2. However, the only article I could find for you to do a comparison was this one.
http://www.ibm.com/developerworks/java/library/j-jws14/index.html
good luck
Comments
Because you mention scalability and performances in your requirements, I assume that there will be some application server involved. In this case, you should go with the WebServices framework that comes bundled with the application server to avoid incompatibility problems between the WebServices framework of the app server and the one you would pick up (ClassCastExceptions, MethodNotFound, etc).