Asankha,

Excuse me for the late response, but I think this is a good solution.
I looked at JIRA and the status is already fixed so that's great!

Thanks,

Tijs

> 
> van: "Asankha C. Perera" <[EMAIL PROTECTED]>
> datum: 2006/11/28 Tue AM 04:18:19 CET
> aan: [email protected]
> onderwerp: Re: Fire and forget MEP
> 
> Paul / Tijs
> 
> I opened a JIRA for this.. My suggestion is that Synapse "logs" all SOAP 
> faults received irrespective of the mediation logic. 
> http://issues.apache.org/jira/browse/SYNAPSE-42
> 
> Let me know if this is the right solution, and I will fix this
> 
> thanks
> asankha
> 
> Paul Fremantle wrote:
> > It seems to me that the default behaviour of Synapse should always be
> > to attempt to send any message on. In this case that isn't possible,
> > so I believe we should log it.
> >
> > Paul
> >
> > On 11/27/06, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
> >> I agree with Sanjiva that it is a bit confusing to add an out 
> >> mediator for a fire and forget scenario.
> >> To my feeling the SOAP Fault response message that is logged when I 
> >> add an out mediator should not be dependent on the out mediator, at 
> >> least for a fire and forget scenario. Asankha, what's your opinion on 
> >> this?
> >>
> >> Tijs
> >>
> >> >
> >> > van: Sanjiva Weerawarana <[EMAIL PROTECTED]>
> >> > datum: 2006/11/27 Mon AM 04:00:55 MET
> >> > aan: [email protected]
> >> > onderwerp: RE: Fire and forget MEP
> >> >
> >> > It seems to me Synapse should always log an error if something goes
> >> > wrong. The default message execution should do that even with no
> >> > mediators present.
> >> >
> >> > Sanjiva.
> >> >
> >> > On Sun, 2006-11-26 at 19:36 +0100, Tijs Rademakers wrote:
> >> > > Hi Asankha,
> >> > >
> >> > >
> >> > >
> >> > > I think you are right about your comments on the error handling.
> >> > >
> >> > > My misconception was based on an example where I did not use an out
> >> > > mediator in my Synapse flow, only an in mediator.
> >> > >
> >> > > In this case no error message is logged anywhere. When I added 
> >> the out
> >> > > mediator I could see the fault message.
> >> > >
> >> > >
> >> > >
> >> > > Thanks,
> >> > >
> >> > >
> >> > >
> >> > > Tijs
> >> > >
> >> > >
> >> > >
> >> > > -----Oorspronkelijk bericht-----
> >> > > Van: Asankha C. Perera [mailto:[EMAIL PROTECTED]
> >> > > Verzonden: zondag 26 november 2006 11:33
> >> > > Aan: [email protected]
> >> > > Onderwerp: Re: Fire and forget MEP
> >> > >
> >> > >
> >> > >
> >> > > Hi Tijs
> >> > >
> >> > >
> >> > >
> >> > >
> >> > > Thanks for your very fast reply and fix!
> >> > >
> >> > >
> >> > > You are welcome!
> >> > >
> >> > >
> >> > >
> >> > > The fire and forget MEP now works.
> >> > > I have one comment at this moment. Because of the action value 
> >> error of the previous version I think the error handling of the fire 
> >> and forget MEP does not work correctly. When an error occurs in the 
> >> web service (for example the exception that the action mapping can 
> >> not be found), I think this error should be logged within Synapse. 
> >> Now I could only retrieve the error in a request/response MEP. In the 
> >> fire and forget MEP the error just is not logged anywhere.
> >> > >
> >> > >
> >> > > The ServiceClient.fireAndForget() API on your client side will not
> >> > > return you an error as the message is successfully delivered to
> >> > > Synapse. (See
> >> > > 
> >> http://ws.apache.org/axis2/1_1/api/org/apache/axis2/client/ServiceClient.html#fireAndForget(org.apache.axiom.om.OMElement
> >>  
> >>
> >> > >
> >> > >  - i.e. it will only return you errors such as host not found...)
> >> > >
> >> > > However, if Synapse receives an error message from a back-end server
> >> > > (such as the Axis2 instance with example #1) you can log this 
> >> message
> >> > > (i.e. the SOAP fault) at Synapse using the Log mediator. Although
> >> > > Synapse will try to send this back to the client, the client will 
> >> not
> >> > > accept/process this reply. Hence I think that the current 
> >> operation is
> >> > > correct from both the Synapse point of view and the fireAndForget()
> >> > > API call....
> >> > >
> >> > > I tried example #1 with  the 'ant placeorder' client but without
> >> > > deploying the SimpleStockQuoteService on the Axis2 instance.. 
> >> Here is
> >> > > the trace
> >> > >
> >> > > Synapse received the request from the client
> >> > > [HttpConnection-8080-1] DEBUG SynapseMessageReceiver - Synapse
> >> > > received a new message...
> >> > > [HttpConnection-8080-1] DEBUG SynapseMessageReceiver - Received
> >> > > To: /StockQuote
> >> > > [HttpConnection-8080-1] DEBUG SynapseMessageReceiver - SOAPAction:
> >> > > urn:placeOrder
> >> > > [HttpConnection-8080-1] DEBUG SynapseMessageReceiver - Body :
> >> > > <?xml version='1.0'
> >> > > 
> >> encoding='utf-8'?><soapenv:Envelope..<m0:symbol>IBM</m0:symbol></m0:order></m0:placeOrder></soapenv:Body></soapenv:Envelope>
> >>  
> >>
> >> > > [HttpConnection-8080-1] DEBUG SynapseMediator - Synapse main
> >> > > mediator :: mediate()
> >> > > ....
> >> > > [HttpConnection-8080-1] DEBUG SendMediator - Sending To:
> >> > > http://localhost:9000/axis2/services/SimpleStockQuoteService
> >> > > [HttpConnection-8080-1] DEBUG SendMediator - SOAPAction:
> >> > > urn:placeOrder
> >> > > [HttpConnection-8080-1] DEBUG SendMediator - Body :
> >> > > <?xml version='1.0'
> >> > > 
> >> encoding='utf-8'?><soapenv:Envelope...<m0:symbol>IBM</m0:symbol></m0:order></m0:placeOrder></soapenv:Body></soapenv:Envelope>
> >>  
> >>
> >> > > and sent it to the specified endpoint
> >> > > [HttpConnection-8080-1] DEBUG Axis2FlexibleMEPClient - sending 
> >> [add =
> >> > > false] [sec = false] [ rm = false] [ to Address:
> >> > > http://localhost:9000/axis2/services/SimpleStockQuoteService]
> >> > > It receives a SOAP fault from the Axis2 server that the service 
> >> cannot
> >> > > be found
> >> > > [HttpConnection-8080-1] DEBUG SynapseMediator - Synapse main
> >> > > mediator :: mediate()
> >> > > ....
> >> > > Its trying to send this back to the client now...
> >> > > [HttpConnection-8080-1] DEBUG SendMediator - Sending To: null
> >> > > [HttpConnection-8080-1] DEBUG SendMediator - SOAPAction:
> >> > > urn:placeOrder
> >> > > [HttpConnection-8080-1] DEBUG SendMediator - Body :
> >> > > <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope
> >> > > 
> >> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";><soapenv:Header 
> >> /><soapenv:Body><soapenv:Fault><faultcode>soapenv:Client</faultcode><faultstring>Service
> >>  
> >> not found operation terminated 
> >> !!</faultstring><detail><Exception>org.apache.axis2.AxisFault: 
> >> Service not found operation 
> >> terminated....</Exception></detail></soapenv:Fault></soapenv:Body></soapenv:Envelope>
> >>  
> >>
> >> > >
> >> > > If you execute the client call to Synapse through TCPMon you will
> >> > > notice that a HTTP 200 message with the error was sent back to the
> >> > > client by Synapse, but was ignored at the client end - as expected.
> >> > >
> >> > > thanks
> >> > > asankha
> >> > > 
> >> ---------------------------------------------------------------------
> >> > > To unsubscribe, e-mail: [EMAIL PROTECTED] For
> >> > > additional commands, e-mail: [EMAIL PROTECTED]
> >> > --
> >> > Sanjiva Weerawarana, Ph.D.
> >> > Founder & Director; Lanka Software Foundation; 
> >> http://www.opensource.lk/
> >> > Founder, Chairman & CEO; WSO2, Inc.; http://www.wso2.com/
> >> > Director; Open Source Initiative; http://www.opensource.org/
> >> > Member; Apache Software Foundation; http://www.apache.org/
> >> > Visiting Lecturer; University of Moratuwa; http://www.cse.mrt.ac.lk/
> >> >
> >> >
> >> > ---------------------------------------------------------------------
> >> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> > For additional commands, e-mail: [EMAIL PROTECTED]
> >> >
> >> >
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> For additional commands, e-mail: [EMAIL PROTECTED]
> >>
> >>
> >
> >
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to