Enabling and disabling Web Services Addressing support

Web Services Addressing (WS-Addressing) is a Worldwide Web Consortium (W3C) specification that aids interoperability between Web services, by defining a standard way to address Web services and by providing addressing information in messages. To enable the WS-Addressing support, you must either configure the Web Services Description Language (WSDL) file for a service that runs on WebSphere Application Server, or use the WS-Addressing application programming interface (API) or system programming interface (SPI) to add WS-Addressing properties in a WebSphere Application Server client.

About this task

Perform this task to enable the WS-Addressing support, either as a service provider or as a client of a service provided by another party. This task also describes how to disable the WS-Addressing support, which can improve performance for those applications that do not use WS-Addressing or any protocol that depends on the WS-Addressing support.

If you are creating a Web service, you can enable the WS-Addressing support during development of the service, by including the UsingAddressing extensibility element in the WSDL binding element for the service. This element contains a required attribute that has a value of either false, which specifies that WS-Addressing information is accepted but not required in incoming messages, or true, which specifies that WS-Addressing information is required in incoming messages. The default value is false. Messages from WebSphere Application Server Version 6.1 clients always include WS-Addressing information if your service WSDL file includes the UsingAddressing element, regardless of the value of the required attribute.

If you are creating a client application to use a service from another provider, you might not have access to the WSDL file for the service, or the service might use a version of WSDL that does not support the UsingAddressing element (if the service is not running on a current version of WebSphere Application Server). However, you can still enable WS-Addressing support, during run time, by setting WS-Addressing properties on the JAX-RPC Stub or Call object that you use to communicate with the service.

The following table summarizes the behavior of the WS-Addressing support in each of the scenarios mentioned previously.
Table 1. The behavior of the WS-Addressing support in WebSphere Application Server
  The WSDL for the service specifies UsingAddressing required = "false" The WSDL for the service specifies UsingAddressing required = "true" The WSDL for the service does not specify UsingAddressing
A client sends a message that contains WS-Addressing information The WS-Addressing information is processed by WebSphere Application Server. The WS-Addressing information is processed by WebSphere Application Server. The WS-Addressing information is processed by WebSphere Application Server.
A non-WebSphere Application Server client sends a message that does not contain WS-Addressing information The message is accepted. The service returns a fault. The message is accepted.
A WebSphere Application Server client sends a message, without specifying addressing properties The message automatically contains the mandatory WS-Addressing information, as defined in the WS-Addressing specification. The information is processed by WebSphere Application Server. The message automatically contains the mandatory WS-Addressing information, as defined in the WS-Addressing specification. The information is processed by WebSphere Application Server. WS-Addressing information is not added by WebSphere Application Server. The message is accepted.

Procedure

Results

WS-Addressing properties are now included in the SOAP message header, and are processed by the server on receipt of the message.

To disable WS-Addressing support for JAX-RPC applications, set the following system property.
com.ibm.ws.wsaddressingAndDependentsDisabled=true
For example:
java -Dcom.ibm.ws.wsaddressingAndDependentsDisabled=true ... application_name
Setting this property in the client or server prevents WebSphere Application Server sending WS-Addressing message addressing properties (MAPs) in the SOAP header of outbound Web service messages. Setting this property in the server additionally prevents WebSphere Application Server processing WS-Addressing MAPs in incoming SOAP headers.
Attention: Use this property with care because applications might require WS-Addressing MAPs to function correctly. Setting this property also disables WebSphere Application Server support for the following specifications, which depend on the WS-Addressing support: Web Services Atomic Transactions, Web Services Business Agreement and Web Services Notification.



In this information ...


Related reference

IBM Redbooks, demos, education, and more

(Index)

Use IBM Suggests to retrieve related content from ibm.com and beyond, identified for your convenience.

This feature requires Internet access.

Task topic Task topic    

Terms and conditions for information centers | Feedback

Last updatedLast updated: Aug 31, 2013 12:02:36 AM CDT
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=pix&product=was-nd-zos&topic=twbs_wsa_dep
File name: twbs_wsa_dep.html