SOAP

SOAP is a messaging protocol for Web services that defines a specification for how to send messages in a standardized form. If you have a well‑formed XML fragment enclosed within a pair of SOAP elements, you have a SOAP message.

There are other parts of the SOAP specification that describe how to represent program data as XML and how to use SOAP to do Remote Procedure Calls (RPCs). These optional parts of the specification are used to implement RPC‑style applications where a SOAP message containing a callable function, and the parameters to pass to the function, is sent from the client and the server returns a message with the results of the executed function. Most current implementations of SOAP support RPC applications because programmers who are used to doing distributed applications with other technologies understand the RPC style.

SOAP also supports document‑style applications where the SOAP message is just a wrapper around an XML document. Document‑style SOAP applications are very flexible and many new Web services take advantage of this flexibility to build services that would be difficult to implement using RPC. JADE gives you the freedom to choose between RPC and document styles.

The last optional part of the SOAP specification defines what an HTTP message that contains a SOAP message looks like. This HTTP binding is important because almost all current operating systems support HTTP. The HTTP binding is optional, but almost all SOAP implementations support it because it is the only standardized protocol for SOAP.

By far the most compelling feature of SOAP is that it has been implemented on many different hardware and software platforms. This means that SOAP can be used to link disparate systems.

SOAP is much smaller and simpler to implement than many of the previous protocols. For example, CORBA, one of SOAP's precursors, took years to implement so only a few implementations were ever released. SOAP, however, can use existing XML parsers and HTTP libraries to do most of the hard work, so a SOAP implementation can be completed in a matter of months.

The ubiquity of HTTP and the simplicity of SOAP make them an ideal basis for implementing Web services that can be called from almost any environment.

The JADE Web services framework provides support for the HTTP protocol. SOAP messaging is transparent, as JADE handles the processing of incoming SOAP messages, creates the appropriate transient objects, and calls the requested method. On return from the method call, a SOAP response message is then generated and sent back to the requesting client. User exits are available via method reimplementation to override the default processing and response.