14.2 SOAP

 <  Day Day Up  >  

SOAP [5] is a simple, lightweight, and extendable XML-based mechanism for exchanging structured data between network applications on top of widely used Internet standards, such as XML, and transport-independent protocols. SOAP consists of two parts :

[5] D. Box, D. Ehnebuske, G. Kakivaya, A. Layman, N. Mendelsohn, H. Frystyk Nielsen, S. Thatte, and D. Winer. "Simple Object Access Protocol (SOAP) 1.1." World Wide Web Consortium Submission, May 2000. http://www.w3.org/TR/SOAP/.

  1. An envelope that defines a framework for describing what is in a message and who should deal with it

  2. A set of encoding rules defining a serialization mechanism that can be used to exchange instances of application-defined data types

SOAP can be used in combination with, or reenveloped by, a variety of network protocols, such as HTTP, RMI-IIOP, SMTP, and FTP. However, the only bindings we refer to in this chapter are SOAP in combination with HTTP and HTTP Extension Framework. [6] SOAP is designed to support a modular architecture rather than to be a complete silo like other protocols, such as DCE and CORBA.

[6] The HTTP Extension Framework describes a generic extension mechanism for the HTTP protocol, addressing the tension between private agreement and public specification and accommodating dynamic extension of HTTP clients and servers by software components . The kinds of extensions capable of being introduced include extending a single HTTP message, defining new encodings, initiating HTTP-derived protocols for new applications, and switching to protocols that, once initiated, run independently of the original protocol stack. For more details, see http://www.w3.org/Protocols/HTTP/ietf-http-ext/.

A SOAP envelope is used to wrap a SOAP message. A SOAP envelope is defined in an Envelope XML element and enables one to add a large variety of metainformation to the message, such as transaction IDs, message-routing information, and message security. The modular architecture of SOAP allows routing and security technologies to be defined in separate documents: the Web Services Addressing specification (WS-Addressing) and the Web Services Security specification (WS-Security), respectively. A SOAP envelope consists of two parts: an optional SOAP header, defined in the Header subelement, and a mandatory SOAP body, defined in the Body subelement.

  1. The SOAP header provides a generic mechanism for adding features to a SOAP message. All immediate child elements of the SOAP Header element are called header entries .

  2. The SOAP body provides a simple mechanism for exchanging information intended for the ultimate recipient of the message. Typical uses of the body element include marshaling RPC calls and error reporting.

Thus, SOAP can be considered to introduce another layer between the transport layer ”for example, HTTP ”and the application layer ”for example, business data ”and the SOAP header makes a convenient place for conveying message metainformation and the application payload.

 <  Day Day Up  >  


Enterprise Java Security. Building Secure J2EE Applications
Enterprise Javaв„ў Security: Building Secure J2EEв„ў Applications
ISBN: 0321118898
EAN: 2147483647
Year: 2004
Pages: 164

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net