Web Services Addressing support
Web Services Addressing (WS-Addressing) support in WAS V7 provides the environment for Web services that use the W3C WS-Addressing specifications, which provide transport-neutral mechanisms to address Web services and to facilitate end-to-end addressing.
New feature: WAS v7.0 provides support for the JAX-WS 2.1 API, which we can use to create portable applications that use WS-Addressing. Existing JAX-WS applications will work as before.
You do not usually have to be aware of the underlying WS-Addressing support because WAS ensures that the Web service applications are WS-Addressing compliant when required. Read this topic only if we have to use the WS-Addressing support directly. For example, if we have one of the following roles:
- A Web service developer who needs to use the WS-Addressing APIs to create endpoint references within an application, and then use these references to target Web service resource instances.
- A system programmer who needs to use the IBM proprietary WS-Addressing system programming interfaces (SPIs) to perform more advanced WS-Addressing operations, such as specifying message-addressing properties on Web services messages.
- An administrator who is configuring policy sets for JAX-WS applications.
The WS-Addressing support for developers consists of two sets of programming interfaces:
- JAX-WS 2.1 standard interfaces
- IBM proprietary implementation of the WS-Addressing specification
Features of the JAX-WS 2.1 WS-Addressing support
WAS v7.0 provides support for the JAX-WS 2.1 WS-Addressing APIs, which we can use to perform basic addressing functions such as creating an endpoint reference, enabling WS-Addressing support, and specifying the action URIs that are associated with the WSDL operations of the Web service. Use these APIs to perform simple WS-Addressing functions and create JAX-WS applications that are portable.
The JAX-WS 2.1 WS-Addressing APIs provide the following features for core WS-Addressing application development:
- Java representations of WS-Addressing endpoint references.
- We can create Java endpoint reference instances for the application endpoint, or other endpoints in the same application, at run time.
You do not have to specify the URI of the endpoint reference.
- We can create Java endpoint reference instances for endpoints in other applications by specifying the URI of the endpoint reference.
- On services, we can use annotations to specify whether WS-Addressing support is enabled and whether it is required.
- On clients, we can use features to specify whether WS-Addressing support is enabled and whether it is required.
- Configure client proxy or Dispatch objects using endpoint references.
- Java support for endpoint references that represent Web Services Resource (WS-Resource) instances.
- We can associate reference parameters with an endpoint reference at the time of its creation, to correlate it with a particular resource instance.
- In targeted Web services, we can extract the reference parameters of an incoming message, so that the Web service can route the message to the appropriate WS-Resource instance.
Features of the IBM proprietary WS-Addressing support
This product provides an IBM proprietary implementation of the WS-Addressing specification, which we can use with JAX-RPC applications as well as JAX-WS applications, to perform more advanced functions such as creating endpoint references that represent highly available objects, or directly setting message addressing properties in the SOAP header. Use these APIs and SPIs to create JAX-RPC applications that use addressing, or you want to perform more advanced functions that are not possible with the JAX-WS 2.1 APIs.
The IBM proprietary API provides the following basic features:
- We can create Java endpoint reference instances to represent any endpoint in the server, based on the deployment environment of the application.
You do not have to specify the URI of the endpoint reference. Additionally, endpoint references can represent highly available or workload-managed objects.
- Configure client JAX-WS BindingProvider request context objects, or JAX-RPC Stub or Call objects, with a WS-Addressing endpoint reference.
Future invocations on these objects are targeted at the endpoint that is represented by the endpoint reference. The invocations also automatically conform to the WS-Addressing spec (namespace) that is associated with that endpoint reference.
The IBM proprietary WS-Addressing SPIs provide support for extended WS-Addressing system development using the following features:
- Reasoning and manipulation of endpoint references beyond what is available at the application programming level.
- We can manipulate the contents of the endpoint reference, as specified by the WS-Addressing specification.
- We can associate a WS-Addressing namespace, and therefore specification behavior, with an endpoint reference.
- Java representations of the WS-Addressing message-addressing properties.
- We can specify WS-Addressing message-addressing properties for outbound Web service messages.
In the targeted Web service, we can extract message addressing properties from inbound Web service messages.
- We can specify the WS-Addressing namespace of an outbound WS-Addressing message, although in most cases the namespace is automatically derived based on the target endpoint reference.
In a targeted Web service, we can acquire the WS-Addressing namespace of an incoming message.
Support for WS-Addressing specifications and interoperability
By default, WAS v7.0 supports W3C...
- WS-Addressing 1.0 Core
- SOAP Binding
...identified by the namespace...
http://www.w3.org/2005/08/addressingFor interoperability, other levels of the WS-Addressing spec are supported, including...
http://schemas.xmlsoap.org/ws/2004/08/addressingFor JAX-WS applications, WAS V7.0 supports the WS-Addressing metadata specification...
http://www.w3.org/2007/05/addressing/metadataThis spec supersedes the WS-Addressing WSDL binding specification...
http://www.w3.org/2006/05/addressing/wsdlIn addition, WAS V7.0 supports the following features from the WS-Addressing WSDL binding specification:
- The wsaw:UsingAddressing extensibility element, on the WSDL Binding element only
The supported namespaces for this element are...
- http://www.w3.org/2006/05/addressing/wsdl
- http://www.w3.org/2006/02/addressing/wsdl (deprecated)
- The wsaw:Action extensibility element
The supported namespaces for this element are...
- http://www.w3.org/2006/05/addressing/wsdl
- http://www.w3.org/2006/02/addressing/wsdl (deprecated)
- http://schemas.xmlsoap.org/ws/2004/08/addressing
Subtopics
Web Services Addressing overview
Web Services Addressing version interoperability
Web Services Addressing application model
Web Services Addressing annotations
Web Services Addressing security considerations
Web Services Addressing: firewalls and intermediary nodes
Web Services Addressing and the service integration bus 
Related concepts
Web Services Resource Framework support
Web Services Atomic Transaction support in the appserver
Web Services Business Activity support in the appserver
Related tasks
Create stateful Web services using the Web Services Resource Framework
Develop applications that use Web Services Addressing
WS-Notification - publish and subscribe messaging for Web services
Related
Web Services Addressing APIs
IBM proprietary Web Services Addressing SPIs
Specifications and API documentation 
Related information
W3C WS-Addressing specifications
W3C submission WS-Addressing specification
JAX-WS API