Web Services Addressing: firewalls and intermediary nodes
Using the Web Services Addressing (WS-Addressing) support in this product, you can create endpoint references that can be distributed across firewalls and intermediary nodes.
Using the WS-Addressing support, you can automatically generate endpoint references that represent endpoints on the node on which the references are generated. These endpoint references contain appropriate address information, based on the URL configured for the endpoint and any valid proxy configuration for the server that hosts the endpoint. Messages targeted at the endpoint reference from the client are routed to the endpoint through the appropriate intermediary node or nodes, as described in the following topology scenarios.
You can also use the IBM proprietary API to create an
endpoint reference that represents a service that should not be workload-managed, for example
because it maintains in-memory state. A service that uses a stateful session bean is one example of
a service that relies on routing affinity to a specific server instance. To create an endpoint
reference to such a service, use the EndpointReferenceManager.createEndpointReference(QName
serviceName, String endpointName, java.rmi.Remote statefulSessionBean) method.
If you enable high availability for stateful session
beans, and create the endpoint reference using this method, the endpoint reference remains valid
even if the stateful session bean is failed over, provided that the request originates from a WebSphere® Application Server client at version 6.1 or later, or is routed by a
Proxy Server for IBM®
WebSphere Application Server in the same administrative cell, as described in
the following topology scenarios.
- Use the Direct connection topology for non-clustered configurations.
- Use the HTTP server, such as IBM HTTP Server, topology when endpoint references refer to services that:
- are deployed in a workload-managed cluster
- do not access any stateful information that is localized to a specific server
- Use the Proxy Server for IBM WebSphere Application Server topology, or the HTTP server with a Proxy Server for IBM WebSphere Application Server topology, when endpoint references refer to services that:
- are deployed in a workload-managed cluster
- optionally, access stateful information that is localized to a specific server
- optionally, can be failed over in a highly-available configuration
The HTTP server with a Proxy Server for IBM WebSphere Application Server topology is useful when the HTTP server itself has no integrated capability for affinity-based routing to WS-Addressing endpoints.
For endpoint references that refer to services that do not access stateful information that is localized to a specific server, all the following topology scenarios are suitable.
Direct connection
Use this topology for non-clustered configurations.


Endpoint references created by using the standard JAX-WS API are not workload managed.
Proxy Server for IBM WebSphere Application Server
Use this topology when endpoint references refer to services that are deployed in a workload-managed cluster, optionally access stateful information that is localized to a specific server, and optionally can be failed over in a highly-available configuration.

![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
- If the endpoint reference represents a stateful session bean, requests targeted at the endpoint reference retain affinity to the server and the instance of that stateful session bean.
- If the endpoint reference represents a highly available stateful session bean, the endpoint reference remains valid if the stateful session bean is failed over to another server.
If the proxy that is addressed by the endpoint reference is a Proxy Server for IBM
WebSphere Application Server, at Version 6.1 or later, that exists in the
same administrative cell as the endpoint, messages targeted at a workload-managed endpoint reference
are workload-managed, based on the cluster.
HTTP server, such as IBM HTTP Server
Use this topology when endpoint references refer to services that are deployed in a workload-managed cluster, and that do not access any stateful information that is localized to a specific server.

Do not deploy an endpoint reference that represents a
stateful session bean in this topology, because the HTTP server will not retain affinity to that
stateful session bean, and will spread its requests across the available servers.
To maintain stateful session bean affinity and high
availability of endpoint references that are created by using the IBM proprietary API, use a Proxy
Server for IBM
WebSphere Application Server in addition to your HTTP server, as described in
the following topology.
HTTP server with a Proxy Server for IBM WebSphere Application Server
Use this topology when endpoint references refer to services that are deployed in a workload-managed cluster, optionally access stateful information that is localized to a specific server, and optionally, can be failed over in a highly-available configuration. The topology is similar to the Proxy Server for IBM WebSphere Application Server topology, but supports the use of any HTTP server as the external reverse proxy.
In this topology, the WS-Addressing API automatically generates the appropriate endpoint reference address based on the URL prefix of the HTTP server that is configured for the target web service module. You must provide HTTP endpoint URL information, that is, configure the HTTP URL prefix for each deployment of each application.

![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
- If the endpoint reference represents a stateful session bean, requests targeted at the endpoint reference retain affinity to the server and the instance of that stateful session bean.
- If the endpoint reference represents a highly available stateful session bean, the endpoint reference remains valid if the stateful session bean is failed over to another server.
If the proxy that is addressed by the endpoint reference is Proxy Server for IBM
WebSphere Application Server, at Version 6.1 or later, and exists in the same
administrative cell as the endpoint, messages targeted at a workload-managed endpoint reference are
workload-managed, based on the cluster.