IBM BPM, V8.0.1, All platforms > Get started with IBM BPM > Key concepts > The enterprise service bus in IBM BPM > Service applications and service modules

Dynamic routing

You can route messages in various ways using endpoints defined at integration time or endpoints determined, dynamically, at run time.

Dynamic routing covers two message routing cases:


Dynamic endpoint selection

The run time has the capability to route request and response messages to an endpoint address identified by a message header element. This message header element can be updated by mediation primitives, in a mediation flow. The endpoint address could be updated with information from a registry, a database, or with information from the message itself. Routing of response messages applies only when the response is being sent by a web service JAX-WS export.

In order for the run time to implement dynamic routing on a request or response, the SCA module must have the Use dynamic endpoint if set in the message header property set. Integration developers can set the Use dynamic endpoint if set in the message header property or they can promote it (make it visible at run time), so that the runtime administrator can set it. You can view module properties in the Module Properties window. To see the window, click Applications > SCA Modules > Module Properties. The integration developer gives promoted properties alias names, and these are the names displayed on the administrative console.


Registry

You can use IBM WebSphere Service Registry and Repository (WSRR) to store service endpoint information, and then create SCA modules to retrieve endpoints from the WSRR registry.

When you develop SCA modules, you use the Endpoint Lookup mediation primitive to allow a mediation flow to query a WSRR registry for a service endpoint, or a set of service endpoints. If an SCA module retrieves a set of endpoints then it must use another mediation primitive to select the preferred one.

Service applications and service modules