Webservice framework comparisonx

batterycopperInternet and Web Development

Nov 12, 2013 (3 years and 9 months ago)

61 views

Comparison

Jersey
and

Apache CXF

RESTful

webservices

License

Jersey


CDDL 1.1


GPL 2
with

CPE




http://jersey.java.n
et
/


Apache CXF


Apache
L
icense

2.0




http://www.apach
e.org/licenses
/


Documentation

Jersey


Good

Wiki
documentation



http://
wikis.sun.com/
display/Jersey/Overv
iew+of+JAX
-
RS+1.0+Features



http://
wikis.sun.com/
display/Jersey/Main


Apache CXF


Large
set

of

examples

for

REST
services



http://cxf.apache.or
g/docs/index.html


http://cxf.apache.or
g/docs/jax
-
rs.html




Maven

support

Jersey


Yes



http
://
jersey.java.n
et/nonav/docume
ntation/latest/user
-
guide.html#chapt
er_deps


Apache CXF


Yes



http://
cxf.apache.
org/docs/jax
-
rs.html#JAX
-
RS
-
Mavendependenci
es


OSGi
support

Jersey


no

Apache CXF


Yes


Subproject
„Distributed OSGi“


http://cxf.apache.
org/distributed
-
osgi.html


Client API

Jersey


Only

http
centric


Proxy
based

in
experimental
state

using

own

annotations

related

to

„@
HypermediaControlle
r



http://
jersey.java.net/no
nav/documentation/lat
est/experimental.html


Apache CXF


Http
centric

and


Proxy
based

> Same
interface

/
class

as

server

can

be

used



http://cxf.apache.or
g/docs/jax
-
rs
-
client
-
api.html





Generated

client

code

Jersey


???

Apache CXF


???




Spring
framework

integration

(
Serverside
)

Jersey


Yes


Services
are

autodetected

by

component
-
scan



http://
blogs.oracle.c
om/enterprisetechtip
s/entry/jersey_and_s
pring#modpom


Apache CXF


Yes


But
services

have

to

be

declared

explicitly



Client:

http://cxf.apache.org/d
ocs/jax
-
rs
-
client
-
api.html#JAX
-
RSClientAPI
-
ConfiguringproxiesinSpri
ng







Spring
framework

integration

(
client
)

Jersey


no



http://
blogs.oracle.
com/enterprisetec
htips/entry/jersey_a
nd_spring#modpo
m


Apache CXF


Yes



http://cxf.apache.or
g/docs/jax
-
rs
-
client
-
api.html#JAX
-
RSClientAPI
-
ConfiguringproxiesinS
pring







Databinding

Jersey


XML


JAXB


interoperable
with

Apache CXFs XML
translation


JSON


not interoperable
with

Apache CXFs JSON
translation

Apache CXF


XML


JAXB


interoperable
with

Jerseys
XML
transformation


XMLBeans


Aegis



JSON


not interoperable
with

Jerseys
JSON
translation


Does

not
support

list

and

other

collection

interfaces



http://cxf.apache.org/doc
s/jax
-
rs
-
data
-
bindings.html






Security

Jersey


OAuth


http
://
developers.sun.co
m/identity/reference/tec
hart/restwebservices.html


http://www.ericonjava.
com/?
p=325


HTTPS


http
://
jersey.java.net/non
av/documentation/latest/
user
-
guide.html#d4e784




Apache CXF


HTTPS


http://cxf.apache.
org/docs/secure
-
jax
-
rs
-
services.html






Webservice
support

Jersey


no

Apache CXF


Yes


http://cxf.apache.or
g/docs/jax
-
rs
-
and
-
jax
-
ws.html



(Apache CXF
allows

to

integrate

into

a
Enterprise Service Bus
concept
)







Performance

Jersey
-
Server + Apache CXF
client