Hi Antonio
I have looked at JMS examples provided with Synapse, but cannot force to
work my own model, because message appear to disappear somewhere.
What I need to see working example of such scenario:
- HTTP proxy which send JMS message over Synapse (e.g. request queue)
- next this message is consumed by some simple service (i try with simple
bean which should uppercase text and send back as echo)
- this simple service responds with new message which is thrown into another
queue (e.g. response queue)
- HTTP proxy should consume from response queue and send back response via
HTTP (*)
Since this is a synchronous request/response, you need to indicate over which response queue to wait for the message - if this is not found, a temporary queue is created with a configurable timeout.

You can use the property mediator as follows, and set "JMS_REPLY_TO" property to the Queue JNDI name before you invoke the <send> mediator.

<property name="JMS_REPLY_TO" value="REPLY_Q_JNDI_NAME" scope="axis2"/>

Everything looks to work without last step - the message is short time in
response queue, and next it's send to some new temporary queue, because JMS
transport cannot find the HTTP proxy endpoint.
What I try is to set up in JMS proxy which is just after and before HTTP
proxy:
<property action="set" name="RESPONSE" value="true" />
<!-- also tried with:
<header name="To" action="remove" />
-->
<send>
 <endpoint>
   <address uri="myHTTPProxy" />
 </endpoint>
</send>
Once you get response from the above out queue (i.e. verify with a log mediator etc), you should be able to just <send/> (You should not give an endpoint - since Synapse will correlate it back correctly to the client socket/connection)
If you can post any example of such two-way, two queues with http proxy
scenario I would appreciate.
If you still have issues, do let us know..

cheers
asankha

--
Asankha C. Perera
http://adroitlogic.org

http://esbmagic.blogspot.com

Reply via email to