Wednesday, 28 December 2016



In the previous note, we saw how we can use custom classes as Mediators.

Moving on to cover other important mediation techniques, I was going through online documentation for 'FOREACH MEDIATOR' using this link -

when I realized, the sample code provided can be made more illustrative and a bit easier.

So code buddies, here we go with our version to create a small demo, using foreach mediator.

1. Kicking off with a sequence generation -

Declaring 'main2' as our sequence to imbibe foreach mediator -

xml version -

<?xml version="1.0" encoding="UTF-8"?>
<sequence name="main2" trace="enable" xmlns="">
<foreach expression="//m0:getQuote/m0:request"
xmlns:ns="http://org.apache.synapse/xsd" xmlns:ns3="http://org.apache.synapse/xsd">
<payloadFactory media-type="xml">
<arg evaluator="xml" expression="//m0:request/m0:symbol"/>
<log level="full"/>

2. Defining an API to use the above sequence -

Let's call it 'foreachAPI' -

XML version -

<api xmlns="" name="foreachAPI" context="/fe">
<resource methods="POST GET" inSequence="main2" outSequence="main2"/>

3. Let's also enable the debug logging, for the above API -

4. Time to hit the API.

Let's use the same XML provided in the tutorial i.e. stockQuoteReq.xml -
Save it locally, and invade the directory where it is parked. Run the below curl command -

curl -d @stockQuoteReq.xml -H "Content-Type: application/soap+xml;charset=UTF-8" ""

5. Output obtained, all the things done using console, no need to deploy any code 😃

o/p xml -

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="" xmlns:m0="http://services.samples" xmlns:xsd="http://services.samples/xsd">

Keep experimenting buddies, share your thoughts!

Featured post

JAVA based project, that can be used to hit DB using JDBC, from WSO2 ESB

Hi Buddies, Here is a small project that will enable you to hit MySQL DB using WSO2 ESB -

Popular Posts