Hi,

The main purpose of message processors are to support store and forward messaging patterns. In your scenario what you are trying to do is send the responce comming back to the original client.which we do not support. Basically idea is to support in only invocations.we provide a way to handle the responce by using a responce sequence but that is for the purpose of handling the processing of the responce.you can't send the response back to the original client.

Message Forwarding prosessor will gurentee the delivey between esb and back end service. But it's not intended for support end to end atomic transaction between client to backend service via esb.

--charith


On Dec 8, 2011, at 9:22 PM, <[email protected]> wrote:

Hi All,

We are trying to implement Guranteed Delivery in one of our project. For doing so we are using ScheduledMessageForwardingProcessor. We are using request-response messaging pattern. To get the response we have used message.processor.reply.sequence property. We are able to log the response payload in the response sequence. But on trying to send the response back to the client we are getting the following error.

 [2011-12-08 03:46:33,113]  INFO - LogMediator
To: /services/StudyProxy.StudyProxyHttpSoap11Endpoint,
WSAction: http://pro.wrt.ccp/xml/ListOfClinicalProtocolHls/getListOfClinicalProtocol , SOAPAction: http://pro.wrt.ccp/xml/ListOfClinicalProtocolHls/getListOfClinicalProtocol ,
MessageID: urn:uuid:b9b9cf4a-140c-40ab-8834-1daa2e46e4a7,
Direction: request

[2011-12-08 03:46:33,113]  INFO - LogMediator
To: ,
WSAction: http://pro.wrt.ccp/xml/ListOfClinicalProtocolHls/getListOfClinicalProtocol , SOAPAction: http://pro.wrt.ccp/xml/ListOfClinicalProtocolHls/getListOfClinicalProtocol , MessageID: urn:uuid:b9b9cf4a-140c-40ab-8834-1daa2e46e4a7, Direction: response, Envelope: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/ envelope/"><soapenv:Body><lis:getListOfClinicalProto colResponse xmlns:lis="http://pro.wrt.ccp/xml/ListOfClinicalProtocolHls/ "><out>?</out></lis:getListOfClinicalProtocolResponse></ soapenv:Body></soapenv:Envel
ope>
[2011-12-08 03:46:33,113] ERROR - ForwardingJob Error Forwarding Message java.lang.RuntimeException: wso2statistics.request.received.time is null in the IN MessageContext at org.wso2. carbon.statistics.internal.ResponseTimeCalculator.calculateResponseTimes( ResponseTimeCalculator.java:54) at org.wso2.carbon.statistics.module.InOutMEPHandler.updateStatistics (InOutMEPHandler.java:106) at org.wso2.carbon.statistics.module.InOutMEPHandler.invoke (InOutMEPHandler.java:90)
        at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340)
        at org.apache.axis2.engine.Phase.invoke(Phase.java:313)
at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java: 262) at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java: 427) at org.apache.synapse.core.axis2.Axis2Sender.sendBack (Axis2Sender.java:159) at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send (Axis2SynapseEnvironment.java:255) at org.apache.synapse.mediators.builtin.SendMediator.mediate (SendMediator.java:84) at org.apache.synapse.mediators.AbstractListMediator.mediate (AbstractListMediator.java:60) at org.apache.synapse.mediators.base.SequenceMediator.mediate (SequenceMediator.java:114) at org.apache.synapse.message.processors.forward.ForwardingJob.execute (ForwardingJob.java:182)
        at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run (SimpleThreadPool.java:529)
We are using the following sequence as the response sequence,
<sequence name="ReplySequence" trace="disable">
        <log/>
        <header name="To" action="remove"/>
<property name="NO_ENTITY_BODY" scope="axis2" action="remove"/>
        <property name="RESPONSE" value="true" scope="default"/>
        <xslt key="conf:/users/wcf2ctms.xslt"/>
        <log level="full"/>
        <send/>
</sequence>

Can anybody point us out where we are going wrong? Do we need to set any property in the response. Because the SOA headers seems to be fine. We have tried even without removing the 'To' still we are getting the same error. I'm attaching the entire synapse definition herewith.Please let us know if anybody has any clue about this?
Thanks,
Debarshi
Please do not print this email unless it is absolutely necessary.

The information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately and destroy all copies of this message and any attachments.

WARNING: Computer viruses can be transmitted via email. The recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email.

www.wipro.com

<SynapseDefinition.txt>
<errorLog.txt>
<ReplySequence.txt>
_______________________________________________
Esb-java-user mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/esb-java-user
_______________________________________________
Esb-java-user mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/esb-java-user

Reply via email to