Dorthe,

You might also want to know whether a framework supports WS-I Basic
Profile compliance. Bear in mind that just because a framework
supports a particular style and encoding, that doesn't mean that it's
interoperable with other frameworks that support the same. The WS-I
profiles define some additional semantics that improve
interoperability, but even profile-compliant services can generate
interop problems. The biggest interop headaches have been caused by
arrays, nulls, auto-generated mappings between language-specific types
(e.g., Java Collections) and XSD types, and XSD types that use some of
the esoteric features of XML Schema. As a rule, it's best to avoid
Choice, Union, List, abstract types, and substitution groups.

As for the specific Axis and Axis2 versions:

Axis version < 1.3 (note that the name of this framework is Axis, not Axis1)
-----------------------
- Uses rpc/encoded as Default
- Does NOT support rpc/literal
- Supports document/literal
- Supports document/literal wrapped
- Can produce WS-I Basic Profile compliant services when using literal format

These versions have a lot of interop problems with arrays and nulls
regardless of the style/encoding used. Support for literal format was
very buggy. WS-I compliance required a fair amount of care -- and
pretty much required a WSDL-first development approach.

Axis version >= 1.3
----------------------
- Uses rpc/encoded as Default
- Supports rpc/literal
- Supports document/literal
- Supports document/literal wrapped (preferred mode for interoperability)
- Can produce WS-I Basic Profile compliant services when using literal
format -- automatic when using "wrapped" style

Axis2 < 1.3 (note that I changed the version number here -- Axis2 is
not a new version of Axis -- it is a completely different framework)
--------------
- Does NOT support rpc/encoded
- Supports rpc/literal
- Uses document/literal by Default
- Does NOT support document/literal wrapped
- Can produce WS-I Basic Profile compliant services, but not by Default

Axis2 >= 1.3
-------------
- still does NOT truly support document/literal wrapped, but it does
support some automatic unwrapping of parameters
- still does NOT produce WS-I Basic Profile compliant service by Default

Axis2's wrapped support does not comply with the model defined in the
JAX-RPC specification, and it is incompatible with the way .NET does
wrapped. If you want to ensure interoperability, it's best to start
with the WSDL you want rather than letting Axis2 generate the WSDL. If
your WSDL is WS-I compliant and it conforms to the wrapped convention,
then Axis2 will generate a service or client that can interoperate
effectively. (but make sure you use your original WSDL)

Anne

On Jan 28, 2008 12:49 AM, Dorthe Luebbert <[EMAIL PROTECTED]> wrote:
> Hi,
>
> I am currently doing some research for a term paper on "interoperability
> of web services". I figured out the following list concerning the
> wsdl-style support of Axis over the years.
> This information was taken from blogs, announcements and mailing list
> postings, so it might be incorrect. I would really appreciate if someone
> could confirm one ore more statements out of this list:
>
> I also read somewhere that the AXIS2' "document/literal wrapped" support
> differs from the way .NET handles this. Can someone confirm this or even
> give some more information on this issue?
>
> Dorthe
>
> --------------------
>
> Axis1 version < 1.3
> -----------------------
> - uses rpc/encoded as Default and does NOT support rpc/literal
> - does it support document/literal?
> - document/literal wrapped is most likely unsupported
>
> Axis1 version >= 1.3
> ----------------------
> - uses rpc/encoded as Default und supports also rpc/literal
> - does it support document/literal?
> - document/literal wrapped is most likely unsupported
>
> Axis2 < 2.13
> --------------
> - does NOT support rpc/encoded any more
> - supports rpc/literal and document/literal
> - does NOT support document/literal wrapped
>
> Axis2 > 2.13
> -------------
> - as < 2.13 plus support for document/literal wrapped
>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to