Should existing applications using Axis 1.x, XFire or Celtix move to the new versions of those projects? If a developer does decide to migrate his or her application to one of the new frameworks, which one should they use? Conversely, if one is writing a new web service from the ground up and no migration is required, which one should they use? Is one framework inherently better than the other? Let’s tackle these questions in order. Firstly, should existing applications migrate? The answer to that question depends largely on the point in its lifecycle your application has reached. A project which is very static and mature, with few or no changes expected in the foreseeable future, probably doesn’t need to migrate as the current framework is serving its needs well enough. If the application’s performance or functionality is impacted by bugs, it might be worth migrating, particularly for users of Axis 1.x, as most of the developer community around Axis has refocused its resources around Axis2. An Axis 1.5 release is in the works, but it may not happen for many months down the road. As for which project to migrate to, it might be easiest to move to to the next generation of your current framework. Both Axis2 and CXF provide migration guides that give developers tips on how to migrate from their previous versions, but as of this writing neither project has provided migration tools or guides for porting web services from one framework to another. In such a migration, though, it’s always worth looking at all the options available. Axis2 and CXF each take different approaches to web service development, and these approaches will appeal more to some developers than others. This brings us to a good point to compare Axis2 and CXF on their own merits...
-
Article: Axis, Axis2 and CXF: Surveying the WS Landscape (15 messages)
- Posted by: Joseph Ottinger
- Posted on: September 11 2007 08:11 EDT
Bjorn Townsend has written "Axis, Axis2 and CXF: Surveying the Open Source Web Services Landscape," an article that compares the Axis frameworks (1 and 2) with CXF, now under the Apache umbrella after having been retooled from its XFire and Celtix origins.Threaded Messages (15)
- i dont like AXIS! by Zhang Hubert on September 11 2007 08:23 EDT
- JAX-WS2 by Sanjiva Weerawarana on September 11 2007 13:59 EDT
-
really? by Zhang Hubert on September 12 2007 07:15 EDT
- JAX-WS 2.0 by Sanjiva Weerawarana on September 13 2007 12:46 EDT
-
really? by Zhang Hubert on September 12 2007 07:15 EDT
- JAX-WS2 by Sanjiva Weerawarana on September 11 2007 13:59 EDT
- Axis2 and WS-Policy by Sanjiva Weerawarana on September 11 2007 13:58 EDT
- Re: Axis2 and WS-Policy by Dan Diephouse on September 12 2007 08:44 EDT
- Re: Axis2 and WS-Policy by Sanjiva Weerawarana on September 13 2007 12:44 EDT
- Re: Axis2 and WS-Policy by Dan Diephouse on September 12 2007 08:44 EDT
- No mention of Spring Web Services? by Jonathan Whitall on September 11 2007 19:06 EDT
- How about Jboss WS by ashish verma on September 11 2007 19:43 EDT
-
www.programmera.net by Olle Kullberg on November 22 2007 05:31 EST
- Re: www.programmera.net by Roger Lee on July 30 2008 09:56 EDT
-
www.programmera.net by Olle Kullberg on November 22 2007 05:31 EST
- Interested in Spring WS two by comain chen on September 11 2007 20:53 EDT
- How about Jboss WS by ashish verma on September 11 2007 19:43 EDT
- good day by Matt Coleman on April 03 2013 03:59 EDT
- hello by Matt Coleman on May 20 2013 04:17 EDT
-
i dont like AXIS![ Go to top ]
- Posted by: Zhang Hubert
- Posted on: September 11 2007 08:23 EDT
- in response to Joseph Ottinger
The performance of AXIS1 is not good! AXIS2 also conform to JAX-WS2 ? -
JAX-WS2[ Go to top ]
- Posted by: Sanjiva Weerawarana
- Posted on: September 11 2007 13:59 EDT
- in response to Zhang Hubert
Yes Axis2 does support JAX-WS2. -
really?[ Go to top ]
- Posted by: Zhang Hubert
- Posted on: September 12 2007 07:15 EDT
- in response to Sanjiva Weerawarana
CXF fully supports JAX-ws20 But i dont think AXIS2 also ! -
JAX-WS 2.0[ Go to top ]
- Posted by: Sanjiva Weerawarana
- Posted on: September 13 2007 12:46 EDT
- in response to Zhang Hubert
If you find issues with Axis2's JAX-WS support please report it in JIRA. -
Axis2 and WS-Policy[ Go to top ]
- Posted by: Sanjiva Weerawarana
- Posted on: September 11 2007 13:58 EDT
- in response to Joseph Ottinger
Bjorne, nice, balanced article. However, your comment about WS-Policy support in Axis2 is dead wrong .. not only does Axis2 support WS-Policy, its actually Axis2's WS-Policy implementation (Apache Neethi) that CXF uses to implement policy! Other than that Axis2 also supports WSDL 2.0. -
Re: Axis2 and WS-Policy[ Go to top ]
- Posted by: Dan Diephouse
- Posted on: September 12 2007 08:44 EDT
- in response to Sanjiva Weerawarana
Bjorne, nice, balanced article.
You make it sounds like Neethi is only for Axis2 usage and we lifted it from you. :-) Its really in the WS Commons at Apache though. There is a fair amount of sharing between both projects. For instance WSS4J which was originally developed for Axis1. Or Jettison which I wrote for CXF is distributed by Axis2 as well (as well as Metro and Jersey I believe!). I am a pragmatist and it definitely makes sense to try share components wherever we can - it makes all projects better. So I view this as feature :-)
However, your comment about WS-Policy support in Axis2 is dead wrong .. not only does Axis2 support WS-Policy, its actually Axis2's WS-Policy implementation (Apache Neethi) that CXF uses to implement policy!
Other than that Axis2 also supports WSDL 2.0. -
Re: Axis2 and WS-Policy[ Go to top ]
- Posted by: Sanjiva Weerawarana
- Posted on: September 13 2007 12:44 EDT
- in response to Dan Diephouse
Come on Dan you know what I meant. Neethi (which means rules/policies in Sinhalese) was written for Axis2, it depends on Axiom (which is the XML Infoset model created for Axis2) and was originally created by Sanka Samaranayake and his team as a final year project at Univ. of Moratuwa in Sri Lanka and I was their project supervisor. Sanka is of course now an Axis2 committer. I didn't say Neethi "belongs" to Axis2 - what I pointed out that its ironic to say Axis2 doesn't support WS-Policy in that situation. *Of course* the code is free to use and we're all happy that CXF is using it as-is rather than copying and creating a clone as was first attempted. Its also used by a bunch of other Java products- Neethi is pretty much the standard Java policy impl in town. (Ah I can see the Sun & JBoss guys getting all upset now ;-)) I'm glad the projects interdepend on code written by both teams. Its only too bad we don't interdepend more! -
No mention of Spring Web Services?[ Go to top ]
- Posted by: Jonathan Whitall
- Posted on: September 11 2007 19:06 EDT
- in response to Joseph Ottinger
In my opinion, you're not really doing a very good job surveying the landscape of web service technologies out there if you don't include Spring WS. -
How about Jboss WS[ Go to top ]
- Posted by: ashish verma
- Posted on: September 11 2007 19:43 EDT
- in response to Jonathan Whitall
I was wondering how does JbossWS stack lines up in comparison to these stacks. It will be good to know that. <a href="http://vashistvishal.blogspot.com> Vishal -
www.programmera.net[ Go to top ]
- Posted by: Olle Kullberg
- Posted on: November 22 2007 17:31 EST
- in response to ashish verma
I was wondering how does JbossWS stack lines up in comparison to these stacks. It will be good to know that.
Well, Ive been trying to make the JBoss web service implementation generate Java classes from a pretty standard WSDL-file, and Im sad to say that more often than not it does not work. ------------------ 1. JBoss 4.0.4: The wstools.sh has a bug (misses 2 qoutes) so you have to fix that before you do anything else. When I fixed that I saw that the generated Java classes had inverted package names. I lost my will to live and gave up. ------------------ 2. JBoss 4.0.5: wstools.sh works but here you have to give the portType element the same name as the port element, or else it wont work. Over all the wstools.sh works and it is possible to deploy your web service. But its quite hard to find documentation how to write the JBoss specific XML to deploy a client that uses the generated code. I did not find any good example. Anyone? ------------------ 3. JBoss 4.2.2 (With JBossWS 1.2.1 or 2.0.1 installed): Here I want to use the new wsconsume.sh script to generate code from a standard WSDL (that confirms to WS-I Basic Profile 1.0 and works well with wstools.sh). I was not suprised when I got the following error: $:~/jboss-4.2.2.GA/bin$ ./wsconsume.sh -k ~/java/Calculator_Jboss422/ws/Calculator.wsdl [: 71: /home/olle/jboss-4.2.2.GA/client/jbossws-client.jar: unexpected operator JBossWS-SunRI stack deployed Exception in thread "main" java.lang.IllegalStateException: Failed to load: org.jboss.ws.tools.jaxws.impl.SunRIConsumerFactoryImpl at org.jboss.wsf.spi.util.ServiceLoader.loadDefault(ServiceLoader.java:205) at org.jboss.wsf.spi.util.ServiceLoader.loadFromSystemProperty(ServiceLoader.java:138) at org.jboss.wsf.spi.util.ServiceLoader.loadService(ServiceLoader.java:68) at org.jboss.wsf.spi.tools.WSContractConsumer.newInstance(WSContractConsumer.java:72) at org.jboss.wsf.spi.tools.WSContractConsumer.newInstance(WSContractConsumer.java:56) at org.jboss.wsf.spi.tools.cmd.WSConsume.importServices(WSConsume.java:189) at org.jboss.wsf.spi.tools.cmd.WSConsume.main(WSConsume.java:79) Caused by: java.lang.ClassNotFoundException: org.jboss.ws.tools.jaxws.impl.SunRIConsumerFactoryImpl at java.net.URLClassLoader$1.run(URLClassLoader.java:200) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at org.jboss.wsf.spi.util.ServiceLoader.loadDefault(ServiceLoader.java:200) ... 6 more ------------------ 4. JBoss 5.0.0 Beta2 (With JBossWS 1.2.1 or 2.0.1 installed): Same as above. ------------------ The bug above might be reported at the JIRA site, but I could not find it. Another very similar is reported see http://jira.jboss.com/jira/browse/JBPAPP-426 , and yet another critical bug is the: http://jira.jboss.org/jira/browse/JBWS-1735 I would not call this quality code. -
Re: www.programmera.net[ Go to top ]
- Posted by: Roger Lee
- Posted on: July 30 2008 09:56 EDT
- in response to Olle Kullberg
Still not fixed 8+ months later. Remember taking a WSDL into JBuilder 6.0 about 4 years and got talking to an Actuate WS in five minutes. Have spent days trying to get a WS to work in JBoss 4.2.1 and WSConsume to work, to no avail. -
Interested in Spring WS two[ Go to top ]
- Posted by: comain chen
- Posted on: September 11 2007 20:53 EDT
- in response to Jonathan Whitall
Seems Spring WS released just recently? -
:)[ Go to top ]
- Posted by: l esca
- Posted on: December 14 2012 01:59 EST
- in response to comain chen
i have learned a lot from theserverside
-
good day[ Go to top ]
- Posted by: Matt Coleman
- Posted on: April 03 2013 03:59 EDT
- in response to Joseph Ottinger
great post guts,,keep it up
-
hello[ Go to top ]
- Posted by: Matt Coleman
- Posted on: May 20 2013 04:17 EDT
- in response to Joseph Ottinger
ws landscape bar back