Adding and Using WS-Addressing Header Elements
This topic describes how to add and use WS-Addressing header elements.
For details about this standard, see Standards Supported by InterSystems IRIS.
Also see Adding WS-Addressing Header Elements When Faults Occur.
Overview
You can add WS-Addressing header elements to your SOAP messages, as specified by the WS-Addressing standards for SOAP 1.1 and SOAP 1.2. To do so, do one of the following:
-
Specify the WSADDRESSING parameter of your web service or client as "AUTO". This option adds a default set of WS-Addressing header elements, discussed in a following subsection.
-
Specify WSADDRESSING as "OFF" (the default) and add WS-Addressing header elements manually, as discussed in a following subsection.
-
Create a policy for the web service or client to include WS-Addressing header elements. To do so, you create and compile a configuration class that refers to the web service or client; in this policy, enable WS-Addressing. See Securing Web Services.
If you attach such a policy, InterSystems IRIS® uses the same set of default WS-Addressing header elements by default. You can create and add WS-Addressing header elements manually instead.
If you attach such a policy, your value for WSADDRESSING is ignored.
Effect on the WSDL
For a web service, the WSADDRESSING parameter does not affect the generated WSDL. Similarly, if you specify this for a web client, it is not necessary for the WSDL to change.
A policy statement that refers to WS-Addressing does affect the WSDL; if you add a policy statement, it is necessary to regenerate any web clients. For an InterSystems IRIS web client, you can simply attach a WS-Addressing policy statement to the client instead of regenerating the client classes.
Adding WS-Addressing Header Elements Manually
Instead of using the default WS-Addressing header elements, you can create and add your own elements manually. To do so:
-
Create an instance of %SOAP.Addressing.PropertiesOpens in a new tab and specify its properties as needed. For details, see the class reference.
-
Set the AddressingOut property of the web service or client equal to this instance of %SOAP.Addressing.PropertiesOpens in a new tab.
Note:
If you set the AddressingOut property, the web service or web client uses the WS-Addressing header elements in this property rather than any WS-Addressing elements specified in an attached policy.