SOAP Undescribed Headers
ActiveMatrix BusinessWorks SOAP header support is added on the Service Resource to handle Undescribed headers. Undescribed headers are SOAP headers that may appear in the SOAP message but are not part of the WSDL binding description. For Inputs, their content has to be mapped into a context object to make it available to the implementing process, as these headers are not a part of the WSDL message. For Output, they have to be mapped to the SOAP message from a context object, as these headers are not part of the WSDL binding.
Undescribed header configuration is available only for SOAP endpoints in the Service resource. This support is not available for SOAP Event Source Activity.
Perform the following general procedure before defining the Undescribed Header:
-
Create a WSDL Service.
-
In the Configuration tab, click EndPoint Bindings and select PortType endpoint.
-
Click Advanced button. This will open the Advanced SOAP Settings screen.
Advanced SOAP Settings
-
Click Input Headers tab. This will show a table with Message name and Part name. Use the + and X buttons to add or delete message in the table. Move the messages up or down the list using the arrow buttons.
-
Click
in the Message name field and click WSDL. Select Undescribed message and click OK as shown in the following figure.
-
Select the Undescribed message.
-
Select the Cardinality from the drop-down as shown in the following figure. Click OK.
The cardinality of the header element will depend on the cardinality chosen by the user.
To define Undescribed Header, perform the following general procedure:
These steps can be followed for Output Context as well. Undescribed headers are available for both Input and Output Context.
Select a Resource
Select Cardinality
Undescribed headers will be available for context mapping in Input Context and Output Context tab, depending on the configuration.
When an InvokePartner activity in the implementing process is invoking a service referenced by the Partner Link, make sure to use the same Context resource in the 'Service Resource Input Context mapping' and in the 'Partner Link Configuration Output Context mapping'.
A GetContext must be performed before using the InvokePartner activity which overwrites the context resource provided as service input. As a best practice, you should use different Context Resources for different context mappings.