In many business cases, it is necessary to define conditions with which the receivers or inbound interfaces of a message are determined during routing. For example, consider a routing condition in the following form: “If the value of a specific field in the message is x, then forward the message to receiver y” .
At configuration time, you can define conditions that depend on the content of the message. You can do this for receiver determinations, receiver rules and interface determinations.
More information: Content-Based Routing
To configure content-based routing, you basically do the following:
When configuring content-based routing in an integrated configuration, Receiver tab, you define routing conditions for specific receivers or a sets of receivers.
When configuring content-based routing in an integrated configuration, Receiver Interfaces tab, you define routing conditions for specific sets of inbound interfaces.
Create an integrated configuration in the Integration Directory: Defining the Integrated Configuration
For local message exchange using the Advanced Adapter Engine or in case you use the Advanced Adapter Engine Extended, you configure content-based routing in an integrated configuration ( Receiver tab page or Receiver Interfaces tab page).
More information: Defining the Integrated Configuration
When you define a routing condition, you basically specify the following attributes:
With the Left Operand , you specify the payload element of the incoming message upon which the routing to the specified receiver is to depend.
In the Right Operand , you enter a value for the payload element.
You choose a specific Operator to link both operands.
You have the following options to specify the payload element:
Using an XPath expression
Using this option, you can select the payload element intuitively from the structure of the incoming message (which is defined by the outbound interface in the key of the integrated configuration).
Using a context object
Using this option, you select a context object that has been defined for the outbound interface. A context object is a design object that can be used as an abbreviated expression for an XPath expression to address a specific payload element.
A context object has to be defined with the corresponding outbound interface in the ES Repository beforehand. So, if you already know at design time the payload elements upon which the routing is likely to depend, you can define the corresponding context objects in the ES Repository at the corresponding service interface.
More information: Creating Context Objects