I used Jersey+Guice+Jackson in a previous project and am using CXF+Spring+Jackson now. The main benefit that I'm getting from CXF right now is that CXF makes it very easy to produce both a JAX-RS and JAX-WS (SOAP) endpoint from the exact same data model and service interface at the same time. The other major difference is that CXF integrates very well with Spring. CXF and Jersey can both generate WADL at runtime, they are different, but can't say which is better, so that's more like chocolate vs. vanilla choice. I used an older version of Jersey and never got WADL working but it worked for me out of the box with CXF, but I know Jersey improved WADL support significantly in later versions and also Jersey's doc says it can augment WADL from javadocs, which CXF can't do, but I never tried it. Jersey had a lot of nice extensions to the JAX-RS standard, but the need to use the majority of those for me went away with the JAX-RS 2.0 release, with CXF supports now.
As for clients, the CXF client is generated from the same interface as the service code, so I can share an "api" project between server and client. I don't think Jersey can do that, and in CXF it just worked immediately out of the box for me with minimal effort. So from one singular Java interface I've gotten REST and SOAP servers and clients. So, in conclusion, for this project, CXF has been a lot better for me. If I had to integrate with different technologies like Guice (which I like better than Spring for dependency injection), it might be a big battle to do that with CXF. But as I started with CXF and sort of grew from there, it worked out well. Jason Winnebeck > -----Original Message----- > From: KARR, DAVID [mailto:[email protected]] > Sent: Thursday, October 24, 2013 11:12 AM > > To both maintainers and users, what do you think distinguishes the JAX- > RS implementation in CXF with Jersey? > > I'd say that real evidence and experience is more informative than > "feelings". ---------------------------------------------------------------------- This email message and any attachments are for the sole use of the intended recipient(s). Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply email and destroy all copies of the original message and any attachments.
