Differences between revisions 53 and 54
Revision 53 as of 2011-11-01 23:59:28
Size: 7486
Editor: c-24-91-72-253
Comment:
Revision 54 as of 2011-11-15 04:09:02
Size: 6838
Editor: c-98-234-52-29
Comment:
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
||'''Feature''' ||'''Axis 1.x''' ||'''Axis2''' ||'''[[http://cxf.apache.org/|CXF]]''' ||'''Glue''' ||'''JBossWS ''' ||'''XFire (1.2)''' ||'''[[https://metro.dev.java.net/|Metro@GlassFish]]''' ||'''OracleAS 10g''' ||
||Basic Profile 1.1 Compliant ||X ||X ||X ||X ||X ||X ||X ||X ||
||Easily Create Services from POJOs ||X ||X ||X ||X ||X ||X ||X ||X ||
||Open Source ||X ||X ||X || ||X ||X ||X || ||
||RPC-Encoding ||X || || ||X ||X || ||X [6] ||X ||
||Spring Support ||X ||X ||X || || ||X ||X || ||
||REST Support || ||X ||X || || || ||X ||X ||
||IDEA Plugins || ||X || || ||X ||X ||X ||Ant ||
||Eclipse Plugins || ||X ||X || ||X ||X ||X ||Ant ||
||NetBeans Plugins || || || || || || ||X ||Ant ||
||JDeveloper || || || || || || || ||X ||
||Hot Deployment || ||X ||X || ||X ||? ||X ||X ||
||Soap 1.1 ||X ||X ||X ||X ||X ||X ||X ||X ||
||Soap 1.2 ||X ||X ||X ||X ||X ||X ||X ||X ||
||Streaming XML (StAX based) || ||X ||X || || ||X ||X || ||
||WSDL 1.1 ->Code (Client) ||X ||X ||X ||X ||X ||X ||X ||X ||
||WSDL 1.1 ->Code (Server) ||X ||X ||X ||X ||X ||X ||X ||X ||
||WSDL 2.0 ->Code (Client) || ||X || ||? ||? ||? || ||? ||
||WSDL2.0 ->Code (Server) || ||X || ||? ||? ||? || ||? ||
||Client-side Asynchrony ||X ||X ||X || || || ||X ||With BPEL ||
||Server-side Asynchrony ||X ||X ||X || || || ||X ||With BPEL ||
||Policy-driven code generation || ||X ||X || || || || || ||
Line 3: Line 25:
|| '''Feature''' || '''Axis 1.x''' || '''Axis2''' || '''[[http://cxf.apache.org/|CXF]]''' || '''Glue''' || '''JBossWS ''' || '''XFire (1.2)''' || '''[[https://metro.dev.java.net/|Metro@GlassFish]]''' || '''OracleAS 10g''' ||
|| Basic Profile 1.1 Compliant || X || X || X || X || X || X || X || X ||
|| Easily Create Services from POJOs || X || X || X || X || X || X ||X || X ||
|| Open Source || X || X || X || || X || X || X || ||
|| RPC-Encoding || X || || || X || X || || X [6] || X ||
|| Spring Support || X || X || X || || || X || X || ||
|| REST Support || || X || X || || || || X || X ||
|| IDEA Plugins || || X || || || X || X || X || Ant ||
|| Eclipse Plugins || || X || X || || X || X || X || Ant ||
|| NetBeans Plugins || || || || || || || X || Ant ||
|| JDeveloper || || || || || || || || X ||
|| Hot Deployment || || X || X || || X || ? || X || X ||
|| Soap 1.1 || X || X || X || X || X || X || X || X ||
|| Soap 1.2 || X || X || X || X || X || X || X || X ||
|| Streaming XML (StAX based) || || X || X || || || X || X || ||
|| WSDL 1.1 ->Code (Client) || X || X || X || X || X || X || X || X ||
|| WSDL 1.1 ->Code (Server) || X || X || X || X || X || X || X || X ||
|| WSDL 2.0 ->Code (Client) || || X || || ? || ? || ? || || ? ||
|| WSDL2.0 ->Code (Server) || || X || || ? || ? || ? || || ? ||
|| Client-side Asynchrony || X || X || X || || || || X || With BPEL ||
|| Server-side Asynchrony || X || X || X || || || || X || With BPEL ||
|| Policy-driven code generation || || X || X || || || || || ||
Line 27: Line 27:

||
'''Feature''' || '''Axis 1.x''' || '''Axis2''' || ''' CXF''' || '''Glue''' || '''JBossWS ''' || '''XFire (1.2)''' || '''Metro@GlassFish''' || '''OracleAS 10g''' ||
|| JAX-RPC || X || || || X? ||  X || || X || X ||
||
JAX-WS || || X [13] ||  X || || || [Early Access] ||  X [5] ||  ||
||
JAX-RS || || || X || || || || || ||
||
JSR 181 || X || [Early Access/Nightly] || X || || X || X || X || X ||
||
JSR 181 on Java 1.4   || || || || || X || X || || ||
||
SAAJ (1.2/1.3) || X || X || X || X || X || X || X || X ||
||
JSR 109  || || || || || || || X || X ||
||
JBI || || || X || || || || X || ||
||'''Feature''' ||'''Axis 1.x''' ||'''Axis2''' ||''' CXF''' ||'''Glue''' ||'''JBossWS ''' ||'''XFire (1.2)''' ||'''Metro@GlassFish''' ||'''OracleAS 10g''' ||
||JAX-RPC ||X || || ||X? ||X || ||X ||X ||
||
JAX-WS || ||X [13] ||X || || ||[Early Access] ||X [5] || ||
||
JAX-RS || || ||X || || || || || ||
||
JSR 181 ||X ||X ||X || ||X ||X ||X ||X ||
||
JSR 181 on Java 1.4 || || || || ||X ||X || || ||
||
SAAJ (1.2/1.3) ||X ||X ||X ||X ||X ||X ||X ||X ||
||
JSR 109 || || || || || || ||X ||X ||
||
JBI || || ||X || || || ||X || ||
Line 40: Line 39:
||Feature ||Axis 1.x ||Axis2 ||CXF ||Glue ||JBossWS ||XFire ||Metro@GlassFish ||OracleAS 10g ||
||XMLBeans Support ||X ||X ||X || || ||X || || ||
||Castor Support ||X ||X [9] || || || ||X || || ||
||JiBX || ||X ||X || || ||X || || ||
||JAXB ||X ||X ||X || ||X ||X ||X [5] ||JAX-RPC ||
||SDO || || ||X || || || || || ||
Line 41: Line 46:
|| Feature || Axis 1.x || Axis2 || CXF || Glue || JBossWS || XFire || Metro@GlassFish || OracleAS 10g ||
|| XMLBeans Support || X || X || X || || || X || || ||
|| Castor Support || X || X [9] || || || || X || || ||
|| JiBX || || X || X || || || X || || ||
|| JAXB || X || X || X || || X || X || X [5] || JAX-RPC ||
|| SDO || || || X || || || || || ||
Line 49: Line 48:
||Feature ||Axis 1.x ||Axis2 ||CXF ||Glue ||JBossWS ||XFire ||Metro@GlassFish ||OracleAS 10g ||
||WS-Addressing ||X ||X ||X ||X ||X ||X ||X ||with BPEL ||
||WS-Atomic Transaction ||X ||X || || || || ||X || ||
||WS-Business Activity || ||X || || || || || || ||
||WS-Coordination ||X ||X || || || || ||X || ||
||WS-Eventing || ||X || || ||X || || || ||
||WS-Metadata Exchange || ||X [10] ||X || || || ||X || ||
||WS-Notification ||X ||X [12] ||X ||? || ||? || || ||
||WS-ReliableMessaging ||X ||X ||X || || || ||X || ||
||WS-Policy || ||X ||X || || || ||X ||X ||
||WS-Secure Conversation || ||X ||X || || || ||X || ||
||WS-Security Policy || ||X ||X || || || ||X || ||
||WS-Security ||X ||X ||X ||X ||X ||X ||X ||X ||
||WS-Trust || ||X ||X || || || ||X || ||
||WS-Transfer || ||X || || || || || || ||
||WSDL 1.1 Support ||X ||X ||X ||X ||X ||X ||X ||X ||
||WSDL 2.0 Support || ||X || || || || || || ||
Line 50: Line 66:
|| Feature || Axis 1.x || Axis2 || CXF || Glue || JBossWS || XFire || Metro@GlassFish || OracleAS 10g ||
|| WS-Addressing || X || X || X || X || X || X || X || with BPEL ||
|| WS-Atomic Transaction || X || X || || || || || X || ||
|| WS-Business Activity || || X || || || || || || ||
|| WS-Coordination || X || X || || || || || X || ||
|| WS-Eventing || || X || || || X || || || ||
|| WS-Metadata Exchange || || X [10] || X || || || || X || ||
|| WS-Notification || X || X [12] || X || ? || || ? || || ||
|| WS-ReliableMessaging || X || X || X || || || || X || ||
|| WS-Policy || || X || X || || || || X || X ||
|| WS-Secure Conversation || || X || X || || || || X || ||
|| WS-Security Policy || || X || X || || || || X || ||
|| WS-Security || X || X || X || X || X || X || X || X ||
|| WS-Trust || || X || X || || || || X || ||
|| WS-Transfer || || X || || || || || || ||
|| WSDL 1.1 Support || X || X || X || X || X || X || X || X ||
|| WSDL 2.0 Support || || X || || || || || || ||
Line 69: Line 68:
||Feature ||Axis 1.x ||Axis2 ||CXF ||Glue ||JBossWS ||XFire ||Metro@GlassFish ||OracleAS 10g ||
||HTTP ||X ||X ||X ||X ||X ||X ||X ||X ||
||JMS ||X ||X ||X ||X ||X ||X ||X ||X ||
||[[http://www.w3.org/TR/soapjms/|SOAP/JMS Spec]] || || ||X || || || || || ||
||Jabber ||Experimental ||X ||X [15] || || ||X || || ||
||SMTP/POP3 ||X ||X ||X [15] || || || ||X || ||
||TCP ||X ||X ||X [15] || || || ||X || ||
||In-VM ||? ||X ||X ||? ||? ||? ||X ||? ||
||SMS || ||X || || || || || || ||
||UDP || ||X || || || || || || ||
Line 70: Line 79:
|| Feature || Axis 1.x || Axis2 || CXF|| Glue || JBossWS || XFire || Metro@GlassFish || OracleAS 10g ||
|| HTTP || X || X || X || X || X || X || X || X ||
|| JMS || X || X || X || X || X || X || X || X ||
|| [[http://www.w3.org/TR/soapjms/|SOAP/JMS Spec]] || || || X || || || || || ||
|| Jabber || Experimental || Experimental || X [15] || || || X || || ||
|| SMTP/POP3 || X || X || X [15] || || || || X || ||
|| TCP || X || X || X [15] || || || || X || ||
|| In-VM || ? || X || X || ? || ? || ? || X || ? ||
Line 80: Line 81:
||Feature ||Axis 1.x ||Axis2 ||CXF ||Glue ||JBossWS ||XFire ||Metro@GlassFish ||OracleAS 10g ||
||Soap w/ Attachments ||X ||X ||X ||X ||X || ||X ||X ||
||DIME ||X || || ||X || || || ||X ||
||MTOM || ||X ||X || ||X ||X ||X ||X ||
Line 81: Line 86:
|| Feature || Axis 1.x || Axis2 || CXF || Glue || JBossWS || XFire || Metro@GlassFish || OracleAS 10g ||
|| Soap w/ Attachments || X || X || X || X || X || || X || X ||
|| DIME || X || || || X || || || || X ||
|| MTOM || || X || X || || X || X || X || X ||
Line 87: Line 88:
||Feature ||Axis 1.x ||Axis2 ||CXF ||Glue ||JBossWS ||XFire ||Metro@GlassFish ||OracleAS ||
||XML Textual ||X ||X ||X ||X ||X ||X ||X ||X ||
||MTOM || ||X ||X || ||X ||X ||X ||X ||
||FastInfoset || ||X ||X || || || ||X || ||
||JSON || ||X ||X || || || ||X || ||
Line 88: Line 94:
|| Feature || Axis 1.x || Axis2 || CXF || Glue || JBossWS || XFire || Metro@GlassFish || OracleAS ||
|| XML Textual || X || X || X || X || X || X || X || X ||
|| MTOM || || X || X || || X || X || X || X ||
|| FastInfoset || || X || X || || || || X || ||
|| JSON || || X || X || || || || X || ||
Line 95: Line 96:
This section is incomplete. If a stack has no WS-A support listed next to it, it probably means that this section has not been filled in for it.
||Feature ||Axis 1.x ||Axis2 ||CXF ||Glue ||JBossWS ||XFire ||Metro@GlassFish ||OracleAS 10g ||
||2003-03 || || ||? || || || || || ||
||2004-04 || || ||? || || || || || ||
||2004-08 ||X ||X ||X || || ||X ||X ||X ||
||2005-08 ||X ||X ||X || || ||X ||X ||X ||
||2006-05 [8] ||X ||X ||X || || || ||X || ||
Line 96: Line 104:
This section is incomplete. If a stack has no WS-A support listed next to it, it probably means that
this section has not been filled in for it.
Line 99: Line 105:
|| Feature || Axis 1.x || Axis2 || CXF || Glue || JBossWS || XFire || Metro@GlassFish || OracleAS 10g ||
|| 2003-03 || || || ? || || || || || ||
|| 2004-04 || || || ? || || || || || ||
|| 2004-08 || X || X || X || || || X || X || X ||
|| 2005-08 || X || X || X || || || X || X || X ||
|| 2006-05 [8]|| X || X || X || || || || X || ||
Line 106: Line 106:
There are only non-normative interop tests for the 2005-08/2006-05 versions
and not very many of those. The only way to achieve 100% interoperability is not to use WS-A at all. If you must use it, use only a URI and not Reference Properties or Reference Parameters, which are not easily converted from version to version, if they can be translated at all.
Line 109: Line 107:
===== Notes =====<<BR>>
[[
#1]] Bootstrapped this page from [[http://xfire.codehaus.org/Stack+Comparison|XFire Stack Comparion page]] on Oct 9, 2006.<<BR>>
[[
#2]] Removed forward looking statements like "Coming in ..."<<BR>>
[[
#3]] Removed JBI JSR as none of the soap stacks here are packaged out of the box with a JBI container.<<BR>>
[[
#4]] Replaced "Via..." with "?"<<BR>>
[[
#5]] JAX-RPC 1.1, JAX-WS 2.0 and JAX-WS 2.1 RI are combined together in Metro. Similarly JAXB 2.0 and JAXB 2.1 are combined together in Metro. JAX-WS 2.0 and JAXB 2.0 functionality is available in Java SE 6 as well.<<BR>>
[[
#6]] Only available through the JAX-RPC 1.1 APIs.<<BR>>
[[
#7]] Derived from [[http://blog.springframework.com/arjen/archives/2006/07/22/ws-addressing-needs-a-phone-book/|ws Addressing review]]<<BR>>
[[
#8]] WSA 1.0 final: shares the same xmlns as the 2005-08 release.<<BR>>
[[
#9]] samples\databinding illustrates how to use castor with "wsdl2java -d none" generated code.<<BR>>
[[
#10]] Mex Module for Axis2 is available [[http://wso2.org/projects/commons/mex|here]] <<BR>>
[[
#11]] Transfer Module for Axis2 is available [[http://wso2.org/projects/commons/xfer|here]] <<BR>>
[[
#12]] Apache Muse project has support for WS-Notifications <<BR>>
[[
#13]] Not JAX-WS TCK compliant due to lack of JAX-WS tooling <<BR>>
[[#
14]] Part of ServiceMix<<BR>>
[[
#15]] By using the Camel transport for CXF ([[http://camel.apache.org/camel-transport-for-cxf.html]]), CXF supports a very wide range of connection possibilities. See [[http://camel.apache.org/components.html]]<<BR>>
There are only non-normative interop tests for the 2005-08/2006-05 versions and not very many of those. The only way to achieve 100% interoperability is not to use WS-A at all. If you must use it, use only a URI and not Reference Properties or Reference Parameters, which are not easily converted from version to version, if they can be translated at all.

===== Notes =====<<BR>> [[#A1|#1]] Bootstrapped this page from [[http://xfire.codehaus.org/Stack+Comparison|XFire Stack Comparion page]] on Oct 9, 2006.<<BR>> [[#A2|#2]] Removed forward looking statements like "Coming in ..."<<BR>> [[#A3|#3]] Removed JBI JSR as none of the soap stacks here are packaged out of the box with a JBI container.<<BR>> [[#A4|#4]] Replaced "Via..." with "?"<<BR>> [[#A5|#5]] JAX-RPC 1.1, JAX-WS 2.0 and JAX-WS 2.1 RI are combined together in Metro. Similarly JAXB 2.0 and JAXB 2.1 are combined together in Metro. JAX-WS 2.0 and JAXB 2.0 functionality is available in Java SE 6 as well.<<BR>> [[#A6|#6]] Only available through the JAX-RPC 1.1 APIs.<<BR>> [[#A7|#7]] Derived from [[http://blog.springframework.com/arjen/archives/2006/07/22/ws-addressing-needs-a-phone-book/|ws Addressing review]]<<BR>> [[#A8|#8]] WSA 1.0 final: shares the same xmlns as the 2005-08 release.<<BR>> [[#A9|#9]] samples\databinding illustrates how to use castor with "wsdl2java -d none" generated code.<<BR>> [[#A10|#10]] Mex Module for Axis2 is available [[http://wso2.org/projects/commons/mex|here]] <<BR>> [[#A11|#11]] Transfer Module for Axis2 is available [[http://wso2.org/projects/commons/xfer|here]] <<BR>> [[#A12|#12]] Apache Muse project has support for WS-Notifications <<BR>> [[#A13|#13]] Not JAX-WS TCK compliant due to lack of JAX-WS tooling <<BR>> [[#A14|#14]] Part of ServiceMix<<BR>> [[#A15|#15]] By using the Camel transport for CXF (http://camel.apache.org/camel-transport-for-cxf.html), CXF supports a very wide range of connection possibilities. See http://camel.apache.org/components.html<<BR>>

General Features

Feature

Axis 1.x

Axis2

CXF

Glue

JBossWS

XFire (1.2)

Metro@GlassFish

OracleAS 10g

Basic Profile 1.1 Compliant

X

X

X

X

X

X

X

X

Easily Create Services from POJOs

X

X

X

X

X

X

X

X

Open Source

X

X

X

X

X

X

RPC-Encoding

X

X

X

X [6]

X

Spring Support

X

X

X

X

X

REST Support

X

X

X

X

IDEA Plugins

X

X

X

X

Ant

Eclipse Plugins

X

X

X

X

X

Ant

NetBeans Plugins

X

Ant

JDeveloper

X

Hot Deployment

X

X

X

?

X

X

Soap 1.1

X

X

X

X

X

X

X

X

Soap 1.2

X

X

X

X

X

X

X

X

Streaming XML (StAX based)

X

X

X

X

WSDL 1.1 ->Code (Client)

X

X

X

X

X

X

X

X

WSDL 1.1 ->Code (Server)

X

X

X

X

X

X

X

X

WSDL 2.0 ->Code (Client)

X

?

?

?

?

WSDL2.0 ->Code (Server)

X

?

?

?

?

Client-side Asynchrony

X

X

X

X

With BPEL

Server-side Asynchrony

X

X

X

X

With BPEL

Policy-driven code generation

X

X

Web Services related JSR standards

Feature

Axis 1.x

Axis2

CXF

Glue

JBossWS

XFire (1.2)

Metro@GlassFish

OracleAS 10g

JAX-RPC

X

X?

X

X

X

JAX-WS

X [13]

X

[Early Access]

X [5]

JAX-RS

X

JSR 181

X

X

X

X

X

X

X

JSR 181 on Java 1.4

X

X

SAAJ (1.2/1.3)

X

X

X

X

X

X

X

X

JSR 109

X

X

JBI

X

X

Data Bindings

Feature

Axis 1.x

Axis2

CXF

Glue

JBossWS

XFire

Metro@GlassFish

OracleAS 10g

XMLBeans Support

X

X

X

X

Castor Support

X

X [9]

X

JiBX

X

X

X

JAXB

X

X

X

X

X

X [5]

JAX-RPC

SDO

X

WS-*

Feature

Axis 1.x

Axis2

CXF

Glue

JBossWS

XFire

Metro@GlassFish

OracleAS 10g

WS-Addressing

X

X

X

X

X

X

X

with BPEL

WS-Atomic Transaction

X

X

X

WS-Business Activity

X

WS-Coordination

X

X

X

WS-Eventing

X

X

WS-Metadata Exchange

X [10]

X

X

WS-Notification

X

X [12]

X

?

?

WS-ReliableMessaging

X

X

X

X

WS-Policy

X

X

X

X

WS-Secure Conversation

X

X

X

WS-Security Policy

X

X

X

WS-Security

X

X

X

X

X

X

X

X

WS-Trust

X

X

X

WS-Transfer

X

WSDL 1.1 Support

X

X

X

X

X

X

X

X

WSDL 2.0 Support

X

Transports

Feature

Axis 1.x

Axis2

CXF

Glue

JBossWS

XFire

Metro@GlassFish

OracleAS 10g

HTTP

X

X

X

X

X

X

X

X

JMS

X

X

X

X

X

X

X

X

SOAP/JMS Spec

X

Jabber

Experimental

X

X [15]

X

SMTP/POP3

X

X

X [15]

X

TCP

X

X

X [15]

X

In-VM

?

X

X

?

?

?

X

?

SMS

X

UDP

X

Attachments

Feature

Axis 1.x

Axis2

CXF

Glue

JBossWS

XFire

Metro@GlassFish

OracleAS 10g

Soap w/ Attachments

X

X

X

X

X

X

X

DIME

X

X

X

MTOM

X

X

X

X

X

X

Encoding Table

Feature

Axis 1.x

Axis2

CXF

Glue

JBossWS

XFire

Metro@GlassFish

OracleAS

XML Textual

X

X

X

X

X

X

X

X

MTOM

X

X

X

X

X

X

FastInfoset

X

X

X

JSON

X

X

X

WS-Addressing Versions

This section is incomplete. If a stack has no WS-A support listed next to it, it probably means that this section has not been filled in for it.

Feature

Axis 1.x

Axis2

CXF

Glue

JBossWS

XFire

Metro@GlassFish

OracleAS 10g

2003-03

?

2004-04

?

2004-08

X

X

X

X

X

X

2005-08

X

X

X

X

X

X

2006-05 [8]

X

X

X

X

There are only non-normative interop tests for the 2005-08/2006-05 versions and not very many of those. The only way to achieve 100% interoperability is not to use WS-A at all. If you must use it, use only a URI and not Reference Properties or Reference Parameters, which are not easily converted from version to version, if they can be translated at all.

===== Notes =====
#1 Bootstrapped this page from XFire Stack Comparion page on Oct 9, 2006.
#2 Removed forward looking statements like "Coming in ..."
#3 Removed JBI JSR as none of the soap stacks here are packaged out of the box with a JBI container.
#4 Replaced "Via..." with "?"
#5 JAX-RPC 1.1, JAX-WS 2.0 and JAX-WS 2.1 RI are combined together in Metro. Similarly JAXB 2.0 and JAXB 2.1 are combined together in Metro. JAX-WS 2.0 and JAXB 2.0 functionality is available in Java SE 6 as well.
#6 Only available through the JAX-RPC 1.1 APIs.
#7 Derived from ws Addressing review
#8 WSA 1.0 final: shares the same xmlns as the 2005-08 release.
#9 samples\databinding illustrates how to use castor with "wsdl2java -d none" generated code.
#10 Mex Module for Axis2 is available here
#11 Transfer Module for Axis2 is available here
#12 Apache Muse project has support for WS-Notifications
#13 Not JAX-WS TCK compliant due to lack of JAX-WS tooling
#14 Part of ServiceMix
#15 By using the Camel transport for CXF (http://camel.apache.org/camel-transport-for-cxf.html), CXF supports a very wide range of connection possibilities. See http://camel.apache.org/components.html<<BR>>

StackComparison (last edited 2011-11-15 19:12:21 by c-24-91-72-253)