This sample demonstrates the functionality of Switch-Case Mediator. A message is passed through the ESB using the Smart Client mode. The ESB acts as a gateway to accept all messages, write and read local properties on a message instance and then perform mediation based on message properties or content.
For a list of prerequisites, see the Prerequisites section in ESB Samples Setup.
Building the Sample
1. Start the ESB with sample 2 configuration using the instructions given in Starting Sample ESB Configurations.
2. A message should appear in the command or text Linux console stating the server started successfully.
3. The synapse configuration in the ESB used for message mediation in this sample is provided in
synapse_sample_2.xml as shown below:
4. Deploy the back-end service 'SimpleStockQuoteService' and start the Axis2 server using the instructions given in section Starting Sample Back-End Services.
5. Now you have a running ESB instance and a back-end service deployed. In the next section, we will send a message to the back-end service through the ESB using a sample client.
Executing the Sample
1. The sample client used here is 'Stock Quote Client' which can operate in several modes. For instructions on this sample client and its operation modes, refer to Stock Quote Client.
Smart Client Mode
Run each of the following ant commands from
<ESB_HOME>/samples/axis2Client directory in the smart client mode, specifying "IBM," "MSFT" and "SUN" as the stock symbols.
2. When the symbol IBM is requested, note in the mediation logs in the ESB start-up console that the case statements' first case for "IBM" is executed and a local property named "symbol" is set to "Great stock - IBM." Subsequently, this local property value is looked up by the
get-property()XPath extension function.
3. Again execute the smart client as follows:
4. The mediation log will be displayed as follows in the ESB start-up console: