Re: SOAP Listeners

Anne Thomas Manes <[email protected]> Fri, 15 Nov 2002 10:01:49 -0500
Newsgroups gmane.comp.windows.devel.soap.general
Message-ID <[email protected]>
Paul,

I think most people used a packaged SOAP implementation. The only folks that
try to build their own SOAP listeners at this point are students and folks
that need a SOAP listener for a platform that isn't supported by a packaged
product. And of course the folks who just always like to do things
themselves for the fun of it...

A SOAP implementation is more than just a listener. It's a SOAP message
processor and a runtime container. The SOAP message processor automatically
marshals and unmarshals messages, processes headers, calls appropriate
message handlers to do custom tasks (security, transactions, logging,
auditing, custom serialization, message transformation, etc.), and converts
the request into a Java invocation. The runtime container hosts the Java
application that implements the service. (The service might simply be a
wrapper that invokes an existing application or it might do all the work
itself).

Examples of packaged SOAP implementations for Java are:
- Apache Axis (http://xml.apache.org/axis/)
- Cape Clear Cape Connect (http://www.capeclear.com)
- IBM WSTK (http://www.alphaworks.ibm.com/tech/webservicestoolkit)
- IONA XMLbus (http://www.xmlbus.com)
- Sun JWSDP (http://java.sun.com/webservices/webservicespack.html)
- Systinet WASP (http://www.systinet.com)
- The Mind Electric GLUE (http://www.themindelectric.com)

Most (all?) of these products run as a servlet, relying on the servlet
engine to manage HTTP sessions and communications.

In addition, pretty much every application server provider (BEA, Borland,
IBM, IONA, Macromedia, Oracle, etc.) provides a SOAP implementation within
the app server.

Another feature of all of these products is that they provide tools to help
you build and deploy SOAP clients and services.

The goal of all of these systems is to make SOAP look like RMI. When using
these SOAP implementations, the Web service developer never really needs to
work directly with SOAP structures or XML. If you're interested in writing
applications that do their own XML processing, and you only want a SOAP
engine to manage the basic SOAP envelope marshalling and unmarshalling
functions, then you may not need a complete SOAP implementation. The JAXM
API is designed to support this type of application. There's a JAXM
reference implementation within Sun's JWSDP. WASP and XMLbus also support
JAXM APIs. And all of the implementations have a "low-level" API that's
equivalent to JAXM.

For a [reasonably] complete list of SOAP implementations, check out these
lists:
http://www.soapware.org/directory/4/implementations
http://www.xmethods.com/ve2/ViewImplementations.po

Anne


> Date:    Thu, 14 Nov 2002 09:20:22 -0800
> From:    Paul Faulkner <[email protected]>
> Subject: SOAP Listeners
>
> Just a general question about SOAP Listeners for all of you.
>
> I have written a JAVA SOAP Listener to handle SOAP requests for my web
> service.  I just wondered what the general practice is for listeners.  Is
> it common to write your own listener or are there off the shelf packaged
> listeners available?
>
> What is the recommendation?
> If you wrote your own listener, what platforms/languages are you using?
>
> thanks,
>
> Appreciate any input you can provide.
>
> You can read messages from the SOAP archive, unsubscribe from
> SOAP, or subscribe to other
> DevelopMentor lists at http://discuss.develop.com.

You can read messages from the SOAP archive, unsubscribe from SOAP, or subscribe to other
DevelopMentor lists at http://discuss.develop.com.