Monday 16 February 2009

Oracle Aqualogic ESB Dynamic Routing Step By Step

I am trying out dynamic routing In oracle service bus based on message payload. Example if the message contain country code 'UK', the UK end point should be called. similarly if country code is US us endpoint (business service) should be called.

This was achieved using dynamic routing as described in Oracle message flow guide. In the guide two methods are specified for dynamic routing, one static xml and another one is storing routing table in database and fetching routing endpoint using XQuery.

Below is a screen shot of proxy routing.

  1. First routing destination is determined by inspecting the payload (using XPath).
  2. Using XQuery respective business service is determined from the DB
  3. Routing Data is deleted from payload as business service does not need this info
  4. Dynamic service call


Over All Flow




Step 1 and 2

  1. First routing destination is determined by inspecting the payload (using XPath).
  2. Using XQuery respective business service is determined from the DB


ER Diagram of the routing database

Step 3

  1. Routing Data is deleted from payload as business service does not need this info




Last Step





No comments: