Well, JAX-WS is definitely the largest thing. CXF treats JAX-WS as a
primary goal and we don't release if the TCK doesn't pass. All of
our current tooling targets JAX-WS compliant code. The runtime is
compliant. Etc... Axis' primary focus is on their proprietary
API's and proprietary mappings. The jaxws stuff is kind of a "bolt
on". Their "jax-ws" runtime is not completely compliant (although in
1.5, it's very close) and they don't have any tooling that generates
jaxws compliant stuff. They use the Sun RI tooling for that.
Because JAX-WS/JAXB is our primary target, that's also what we
optimize. Using the Axis teams own results:
http://www.nabble.com/Re%3A--General--Advantages-of-Axis2-over-Axis1-p14705959.html
show that CXF JAXWS+JAXB is faster than their JAXB stuff. Thus, if
you want fast, standards based toolkits, (since you asked about JSR
support, I assume that's important to you) CXF is great. The Axis2
ADB stuff is faster, but that's proprietary. That said, the SXC
project at codehaus (sxc.codehaus.org) is doing everything that ADB
does, but for JAXB. Thus, it's quite possible that the jaxb+sxc+cxf
may outperform even the adb stuff. Don't really know.
CXF is also (from what I've heard) a lot easier to embed. We don't
use any proprietary packaging models. (mar?) We also use Spring for a
lot of the wiring and configuration. Our spring support is generally
much better than Axis'.
The JSR 311/JAX-RS support is something very new and ongoing. The
spec isn't even final yet, but we're trying to keep up with it.
Basically, we recognize that SOAP/XML isn't the only game in town and
top notch REST support is important. A top framework should allow
REST paradigms as well. Again, if their is a standard, lets use it
instead of doing some proprietary thing. That said, since the spec
isn't final yet and changes every couple months, this area in cxf is
in a bit of necessary "flux".
There's a bunch of other little things like the CORBA binding,
Javascript client generation, etc... that are also there.
Finally, another major thing to consider is the support for the
communities. CXF has an excellent track record of providing patch
releases that fix issues found by our users. We generally release
patches every 8 weeks or so so if you have an issue and a patch can be
provided to fix it, you can be confident in getting it in a release
fairly soon. Unless something is super critical, Axis generally
release about every 6-9 months or so. Obviously, it's all open
source so you can just download the sources and build your own
"release" for your own use. There is also the option for both of
them for commercial support if that is required by your organization
for production or development. (wso2 for Axis, IONA for cxf,
possibly others)
Does that answer the question or did I ramble on too much and
completely confuse you? :-)
Dan
On Jul 16, 2008, at 6:26 AM, Mohan Radhakrishnan wrote:
I am trying to differentiate CXF from Axis.
1. JSR support( JAX_WS etc. )
2. J2SE 5
What else apart from the advantages mentioned on the site ?
Thanks,
Mohan
--
View this message in context:
http://www.nabble.com/JSR-109---311.-What-sets-CXF-apart-from-Axis-2-as-far-as-JSR%27s-are-concerned---tp18484568p18484568.html
Sent from the cxf-dev mailing list archive at Nabble.com.
---
Daniel Kulp
[EMAIL PROTECTED]
http://www.dankulp.com/blog