OpenSSO Enterprise contains an implementation of the Liberty ID-WSF SOAP Binding Specification from the Liberty Alliance Project. The specification defines a transport layer for sending and receiving SOAP messages.
The SOAPReceiver servlet receives a Message object from a web service client (WSC), verifies the signature, and constructs its own Message object for processing by OpenSSO Enterprise. The SOAPReceiver then invokes the correct request handler class to pass this second Message object on to the appropriate OpenSSO Enterprise service for a response. When the response is generated, the SOAPReceiver returns this Message object back to the WSC. More information can be found in the SOAP Binding Service in Sun OpenSSO Enterprise 8.0 Technical Overview.
The SOAP Binding Service includes a Java package named com.sun.identity.liberty.ws.soapbinding. This package provides classes to construct SOAP requests and responses and to change the contact point for the SOAP binding. The following table describes some of the available classes. For more detailed information, see the Sun OpenSSO Enterprise 8.0 Java API Reference.
Table 9–7 SOAP Binding Service API
Class |
Description |
---|---|
Client |
Provides a method with which a WSC can send a request to a WSP using a SOAP connection. It also returns the response. |
ConsentHeader |
Represents the SOAP element named Consent. |
CorrelationHeader |
Represents the SOAP element named Correlation. By default, CorrelationHeader will always be signed. |
ProcessingContextHeader |
Represents the SOAP element named ProcessingContext. |
ProviderHeader |
Represents the SOAP element named Provider. |
RequestHandler |
Defines an interface that needs to be implemented on the server side by each web service in order to receive a request from a WSC and generate a response. After implementing the class, it must be registered in the SOAP Binding Service so the SOAP framework knows where to forward incoming requests. |
Message |
Represents a SOAP message and is used by both the web service client and server to construct SOAP requests and responses. Each SOAP message has multiple headers and bodies. It may contain a certificate for client authentication, the IP address of a remote endpoint, and a SAML assertion used for signing. |
ServiceInstanceUpdateHeader |
Allows a service to change the endpoint on which requesters will contact it. |
ServiceInstanceUpdateHeader.Credential |
Allows a service to use a different security mechanism and credentials to access the requested resource. |
SOAPFault |
Represents the SOAP element named SOAP Fault. |
SOAPFaultDetail |
Represents the SOAP element named Detail, a child element of SOAP Fault. |
UsageDirectiveHeader |
Defines the SOAP element named UsageDirective. |
See PAOS Binding for information on this reverse HTTP binding for SOAP.