SOAP with Attachments API for JavaTM 1.3

Contents

SAAJ API Overview

The SOAP with Attachments API for JavaTM (SAAJ) 1.3 provides the API for creating and sending SOAP messages by means of the javax.xml.soap package. It is used for the SOAP messaging that goes on behind the scenes in JAX-RPC, and JAXR implementations. SOAP Handlers in JAX-WS use SAAJ APIs to access the SOAP Message.  Developers can also use it to write SOAP messaging applications directly instead of using JAX-RPC/JAX-WS.


NOTE:

 The SAAJ specification is developed through the Java Community Process following the process described at jcp.org. This process involves an Expert Group with a lead that is responsible for delivering the specification, a reference implementation (RI) and a test compatibility kit (TCK). The primary goal of an RI is to support the development of the specification and to validate it. Specific RIs can have additional goals; the SAAJ RI is a production-quality implementation that is used directly in a number of products by Sun and other vendors. To emphasize the quality of the implementation we call it a Standard Implementation.

The SAAJ expert group has wide industry participation with Sun Microsystems as the EG lead. The initial API was part of JAXM 1.0 in JSR-67 and was released in December 2001; the specification was later separated from JAXM in a maintenance release in June 2002. The javax.xml.messaging package, defined in the Java API for XML Messaging (JAXM) 1.1 specification, is not part of the Java Web Services Developer Pack. The JAXM API is available as a separate download from http://java.sun.com/xml/downloads/jaxm.html

The SAAJ API allows a client to send messages directly to the ultimate recipient using a SOAPConnection object, which provides a point-to-point connection to the intended recipient. Response messages are received synchronously using a request-response model. SOAPConnection (and its related classes) is a pure library implementation that lets you send SOAP messages directly to a remote party. A standalone client, that is, one that does not run in a container such as a servlet, must include client-side libraries in its CLASSPATH. This model is simple to get started but has limited possibilities for reliability and message delivery guarantees. For instance, the point-to-point message exchange model relies largely on the reliability of the underlying transport for delivering a message.

Please send feedback on this SAAJ 1.3 release to users@saaj.dev.java.net

Release Documentation

Related Information