How a SOAP Fault is Mapped to the Generic Fault Output Structure
When the web service descriptor is created on Integration Server 8.2, the output signature of the web service connector uses a generic fault structure. In case of SOAP faults, to populate the generic fault structure, Integration Server maps data from a source SOAP 1.1 or SOAP 1.2 fault into the generic fault output.
The following table lists the fields in the generic fault structure, that is the fields in the fault output parameter, and how Integration Server sets the field values based on whether a SOAP 1.2 or SOAP 1.1 fault message is returned.
Output parameter in the generic fault structure | Value of the parameter for a SOAP 1.2 fault | Value of the parameter for a SOAP 1.1 fault |
fault code | | |
namespaceName | Namespace name of the Code element’s value | Namespace name of the faultcode element’s value |
localName | Local part of the Code element’s value | Local part of the faultcode element’s value |
subcodes | | |
namespaceName | Namespace name of the Subcode element’s value | null* |
localName | Local name of the Subcode element’s value | null* |
reasons | Reason elements | |
*body | Text child element of a Reason element | faultstring element’s value |
@lang | Accept-Language header in the xml:lang attribute of the Text child element | null* |
node | Node element’s value | null* |
role | Role element’s value | faultactor element’s value |
detail | Detail element’s value | detail element’s value |
*Some of the fields in the generic fault structure apply only to a SOAP 1.2 fault message because there is no corresponding field in a SOAP 1.1 fault message. As a result, when Integration Server populates the fault output variable from a SOAP 1.1 fault message, the fields that do not have a corresponding value will be null. |
If for some reason you want to map data from the generic fault structure (i.e., fault output parameter) into the SOAP_1_2 document variable that is used when working with a web service descriptor created using an Integration Server version prior to 8.2, be aware that you might not be able to map all the data. Keep the following in mind when you are mapping data from the generic fault structure to the SOAP_1_2 document variable:
The
subcodes element, which is not available in the
SOAP_1_2 document and is recursive in SOAP 1.2 fault structure, is represented as an array in the generic fault structure.
The
reason element, which is a simple document in the
SOAP_1_2 document, is represented as an array in the generic fault structure.