You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@synapse.apache.org by Murali Krishnan <cm...@yahoo.com> on 2009/05/11 21:40:28 UTC

Synapse endpoint timeout

Hi,
I'm trying out the <timeout> element functionality available for the various endpoints in Synapse and am having some difficulty getting it to work. Basically I have a synapse proxy service with definition as shown below and am forwarding the request to the SimpleStockQuoteService which responds after 20 secs (using thread.sleep), but since the endpoint timeout value is set to 3secs, it should timeout sooner and return a fault ...but I'm getting an error. 
Is there an example of how to get this working? 
Thanks
Murali

---- proxy defn --------

    <proxy name="DelayedStockQuoteProxy">
        <target>
            <endpoint>
                
                    <timeout>
                        <duration>3</duration>
                        <action>fault</action>
                    </timeout>
                </address>
            </endpoint>
            <outSequence>
                <send/>
            </outSequence>
            <faultSequence>
                <log>
                    <property name="fault" value="executing fault sequence!"/>
                </log>
                <property name="RESPONSE" value="true" />
                <send/>
            </faultSequence>
        </target>
        <publishWSDL uri="file:repository/conf/sample/resources/proxy/sample_proxy_1.wsdl"/>
    </proxy>
</definitions>

--------- synapse output -------------

2009-05-11 15:30:45,820 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR HttpCoreNIOSender Malformed destination EPR : /soa
p/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11Endpoint
java.net.MalformedURLException: no protocol: /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11Endpoint
        at java.net.URL.<init>(URL.java:567)
        at java.net.URL.<init>(URL.java:464)
        at java.net.URL.<init>(URL.java:413)
        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:317)
        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:256)
        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
        at org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
        at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
        at org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
        at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
        at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
        at org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
        at org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
        at org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
        at org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
        at org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
        at java.util.TimerThread.mainLoop(Timer.java:512)
        at java.util.TimerThread.run(Timer.java:462)
2009-05-11 15:30:45,820 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR Axis2Sender Unexpected error sending message back
org.apache.axis2.AxisFault: Malformed destination EPR : /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11End
point
        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.handleException(HttpCoreNIOSender.java:550)
        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:349)
        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:256)
        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
        at org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
        at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
        at org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
        at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
        at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
        at org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
        at org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
        at org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
        at org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
        at org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
        at java.util.TimerThread.mainLoop(Timer.java:512)
        at java.util.TimerThread.run(Timer.java:462)
Caused by: java.net.MalformedURLException: no protocol: /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11End
point
        at java.net.URL.<init>(URL.java:567)
        at java.net.URL.<init>(URL.java:464)
        at java.net.URL.<init>(URL.java:413)
        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:317)
        ... 16 more



      

Re: Synapse endpoint timeout

Posted by Ruwan Linton <ru...@gmail.com>.
You need to send the message with a send mediator after removing the To
header with a header mediator in the fault sequence to send the fault back
to client.

Thanks,
Ruwan

On Fri, May 15, 2009 at 2:33 AM, Murali Krishnan <cm...@yahoo.com> wrote:

> Thanks for the tip, Ruwan.
> After including a log mediator with "full" level, I don't see this error
> anymore. But, the fault response doesn't come back to the client as well.
> Eventually, the client reports a "read timed out" socket exception...
> Any idea why this may be happening?
> Thanks again
> Murali
>
>
>
>
>
>
> ________________________________
> From: Ruwan Linton <ru...@gmail.com>
> To: user@synapse.apache.org
> Sent: Tuesday, May 12, 2009 3:11:15 PM
> Subject: Re: Synapse endpoint timeout
>
> You could get rid of this issue, if you put a log mediator with full log
> level before sending the message out, so the log mediator will build the
> message for logging.
>
> Thanks,
> Ruwan
>
> On Tue, May 12, 2009 at 9:24 PM, indika kumara <indika.kuma@gmail.com
> >wrote:
>
> > Hi Murali
> >
> > What is the synapse version you are using. This is happened when try
> > to use stream that has already been consumed. This is happened if the
> > message has not been built.
> >
> > Please refer [1]
> >
> > [1] http://www.mail-archive.com/user@synapse.apache.org/msg00564.html
> >
> >
> > Thanks
> > Indika
> >
> > On Tue, May 12, 2009 at 9:16 PM, Murali Krishnan <cm...@yahoo.com>
> wrote:
> > > Thanks for the reply, indika. I think I made a small progress by
> removing
> > the 'To' header in the fault sequence, but am encountering a different
> > exception now somewhere within axiom... Any clues why this may be
> happening?
> > Thanks.
> > >
> > > 2009-05-12 11:39:54,298 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR
> > HttpCoreNIOSender IO Error sending response messag
> > > e
> > > org.apache.axis2.AxisFault: problem accessing the parser. Parser
> already
> > accessed!
> > >        at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
> > >        at
> >
> org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:83)
> > >        at
> >
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncResponse(HttpCoreNIOSender.java:417)
> > >        at
> >
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:264)
> > >        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> > >        at
> > org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
> > >        at
> >
> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
> > >        at
> >
> org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
> > >        at
> >
> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
> > >        at
> >
> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
> > >        at
> >
> org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
> > >        at
> > org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> > >        at
> >
> org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
> > >        at
> >
> org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
> > >        at
> > org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> > >        at
> >
> org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
> > >        at
> > org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
> > >        at java.util.TimerThread.mainLoop(Timer.java:512)
> > >        at java.util.TimerThread.run(Timer.java:462)
> > > Caused by: javax.xml.stream.XMLStreamException: problem accessing the
> > parser. Parser already accessed!
> > >        at
> > org.apache.axiom.om.impl.llom.OMStAXWrapper.next(OMStAXWrapper.java:960)
> > >        at
> >
> org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serializeNode(StreamingOMSerializer.java:100)
> > >        at
> >
> org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:68)
> > >        at
> >
> org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:57)
> > >        at
> >
> org.apache.axiom.om.impl.util.OMSerializerUtil.serializeByPullStream(OMSerializerUtil.java:548)
> > >        at
> >
> org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:232)
> > >        at
> >
> org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> > >        at
> >
> org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
> > >        at
> >
> org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
> > >        ... 17 more
> > > 2009-05-12 11:39:54,313 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR
> > Axis2Sender Unexpected error sending message back
> > > org.apache.axis2.AxisFault: IO Error sending response message
> > >        at
> >
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.handleException(HttpCoreNIOSender.java:550)
> > >        at
> >
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncResponse(HttpCoreNIOSender.java:421)
> > >        at
> >
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:264)
> > >        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> > >        at
> > org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
> > >        at
> >
> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
> > >        at
> >
> org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
> > >        at
> >
> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
> > >        at
> >
> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
> > >        at
> >
> org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
> > >        at
> > org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> > >        at
> >
> org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
> > >        at
> >
> org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
> > >        at
> > org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> > >        at
> >
> org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
> > >        at
> > org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
> > >        at java.util.TimerThread.mainLoop(Timer.java:512)
> > >        at java.util.TimerThread.run(Timer.java:462)
> > > Caused by: org.apache.axis2.AxisFault: problem accessing the parser.
> > Parser already accessed!
> > >        at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
> > >        at
> >
> org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:83)
> > >        at
> >
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncResponse(HttpCoreNIOSender.java:417)
> > >        ... 16 more
> > > Caused by: javax.xml.stream.XMLStreamException: problem accessing the
> > parser. Parser already accessed!
> > >        at
> > org.apache.axiom.om.impl.llom.OMStAXWrapper.next(OMStAXWrapper.java:960)
> > >        at
> >
> org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serializeNode(StreamingOMSerializer.java:100)
> > >        at
> >
> org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:68)
> > >        at
> >
> org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:57)
> > >        at
> >
> org.apache.axiom.om.impl.util.OMSerializerUtil.serializeByPullStream(OMSerializerUtil.java:548)
> > >        at
> >
> org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:232)
> > >        at
> >
> org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> > >        at
> >
> org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
> > >        at
> >
> org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
> > >        ... 17 more
> > > 2009-05-12 11:39:59,756 [10.128.81.1-mcmgunasek-6400]
> > [HttpClientWorker-1]  WARN SynapseCallbackReceiver Synapse receive
> > > d a response for the request with message Id :
> > urn:uuid:45D49B9CD7B413D90D45484550376096-651399307 But a callback is not
> > >  registered (anymore) to process this response
> > >
> > >
> > >
> > >
> > >
> > >
> > > ________________________________
> > > From: indika kumara <in...@gmail.com>
> > > To: user@synapse.apache.org
> > > Sent: Tuesday, May 12, 2009 1:02:33 AM
> > > Subject: Re: Synapse endpoint timeout
> > >
> > > Hi
> > >
> > > Error you have got is related with malformed endpoint URL.You can see
> > > the timeout handler has done timeout processing.
> > >
> > > BTW, before sending error back to client, remove existing ‘to’ header.
> > > In your fault sequence, add ‘<header name="To" action="remove"/>’
> > > before send mediator.
> > >
> > > Thanks
> > > Indika
> > >
> > > On Tue, May 12, 2009 at 1:10 AM, Murali Krishnan <cm...@yahoo.com>
> > wrote:
> > >> Hi,
> > >> I'm trying out the <timeout> element functionality available for the
> > various endpoints in Synapse and am having some difficulty getting it to
> > work. Basically I have a synapse proxy service with definition as shown
> > below and am forwarding the request to the SimpleStockQuoteService which
> > responds after 20 secs (using thread.sleep), but since the endpoint
> timeout
> > value is set to 3secs, it should timeout sooner and return a fault ...but
> > I'm getting an error.
> > >> Is there an example of how to get this working?
> > >> Thanks
> > >> Murali
> > >>
> > >> ---- proxy defn --------
> > >>
> > >>    <proxy name="DelayedStockQuoteProxy">
> > >>        <target>
> > >>            <endpoint>
> > >>
> > >>                    <timeout>
> > >>                        <duration>3</duration>
> > >>                        <action>fault</action>
> > >>                    </timeout>
> > >>                </address>
> > >>            </endpoint>
> > >>            <outSequence>
> > >>                <send/>
> > >>            </outSequence>
> > >>            <faultSequence>
> > >>                <log>
> > >>                    <property name="fault" value="executing fault
> > sequence!"/>
> > >>                </log>
> > >>                <property name="RESPONSE" value="true" />
> > >>                <send/>
> > >>            </faultSequence>
> > >>        </target>
> > >>        <publishWSDL
> > uri="file:repository/conf/sample/resources/proxy/sample_proxy_1.wsdl"/>
> > >>    </proxy>
> > >> </definitions>
> > >>
> > >> --------- synapse output -------------
> > >>
> > >> 2009-05-11 15:30:45,820 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR
> > HttpCoreNIOSender Malformed destination EPR : /soa
> > >> p/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11Endpoint
> > >> java.net.MalformedURLException: no protocol:
> > /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11Endpoint
> > >>        at java.net.URL.<init>(URL.java:567)
> > >>        at java.net.URL.<init>(URL.java:464)
> > >>        at java.net.URL.<init>(URL.java:413)
> > >>        at
> >
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:317)
> > >>        at
> >
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:256)
> > >>        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> > >>        at
> > org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
> > >>        at
> >
> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
> > >>        at
> >
> org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
> > >>        at
> >
> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
> > >>        at
> >
> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
> > >>        at
> >
> org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
> > >>        at
> > org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> > >>        at
> >
> org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
> > >>        at
> >
> org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
> > >>        at
> > org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> > >>        at
> >
> org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
> > >>        at
> > org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
> > >>        at java.util.TimerThread.mainLoop(Timer.java:512)
> > >>        at java.util.TimerThread.run(Timer.java:462)
> > >> 2009-05-11 15:30:45,820 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR
> > Axis2Sender Unexpected error sending message back
> > >> org.apache.axis2.AxisFault: Malformed destination EPR :
> > /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11End
> > >> point
> > >>        at
> >
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.handleException(HttpCoreNIOSender.java:550)
> > >>        at
> >
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:349)
> > >>        at
> >
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:256)
> > >>        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> > >>        at
> > org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
> > >>        at
> >
> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
> > >>        at
> >
> org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
> > >>        at
> >
> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
> > >>        at
> >
> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
> > >>        at
> >
> org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
> > >>        at
> > org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> > >>        at
> >
> org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
> > >>        at
> >
> org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
> > >>        at
> > org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> > >>        at
> >
> org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
> > >>        at
> > org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
> > >>        at java.util.TimerThread.mainLoop(Timer.java:512)
> > >>        at java.util.TimerThread.run(Timer.java:462)
> > >> Caused by: java.net.MalformedURLException: no protocol:
> > /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11End
> > >> point
> > >>        at java.net.URL.<init>(URL.java:567)
> > >>        at java.net.URL.<init>(URL.java:464)
> > >>        at java.net.URL.<init>(URL.java:413)
> > >>        at
> >
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:317)
> > >>        ... 16 more
> > >>
> > >>
> > >>
> > >>
> > >
> > >
> > >
> > >
> >
>
>
>
> --
> Ruwan Linton
> Senior Software Engineer & Product Manager; WSO2 ESB; http://wso2.org/esb
> WSO2 <http://wso2.org/esb%0AWSO2> Inc.; http://wso2.org
> email: ruwan@wso2.com; cell: +94 77 341 3097
> blog: http://ruwansblog.blogspot.com
>
>
>
>
>



-- 
Ruwan Linton
Senior Software Engineer & Product Manager; WSO2 ESB; http://wso2.org/esb
WSO2 Inc.; http://wso2.org
email: ruwan@wso2.com; cell: +94 77 341 3097
blog: http://ruwansblog.blogspot.com

Re: Synapse endpoint timeout

Posted by Murali Krishnan <cm...@yahoo.com>.
Thanks for the tip, Ruwan.
After including a log mediator with "full" level, I don't see this error anymore. But, the fault response doesn't come back to the client as well. Eventually, the client reports a "read timed out" socket exception...
Any idea why this may be happening? 
Thanks again
Murali






________________________________
From: Ruwan Linton <ru...@gmail.com>
To: user@synapse.apache.org
Sent: Tuesday, May 12, 2009 3:11:15 PM
Subject: Re: Synapse endpoint timeout

You could get rid of this issue, if you put a log mediator with full log
level before sending the message out, so the log mediator will build the
message for logging.

Thanks,
Ruwan

On Tue, May 12, 2009 at 9:24 PM, indika kumara <in...@gmail.com>wrote:

> Hi Murali
>
> What is the synapse version you are using. This is happened when try
> to use stream that has already been consumed. This is happened if the
> message has not been built.
>
> Please refer [1]
>
> [1] http://www.mail-archive.com/user@synapse.apache.org/msg00564.html
>
>
> Thanks
> Indika
>
> On Tue, May 12, 2009 at 9:16 PM, Murali Krishnan <cm...@yahoo.com> wrote:
> > Thanks for the reply, indika. I think I made a small progress by removing
> the 'To' header in the fault sequence, but am encountering a different
> exception now somewhere within axiom... Any clues why this may be happening?
> Thanks.
> >
> > 2009-05-12 11:39:54,298 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR
> HttpCoreNIOSender IO Error sending response messag
> > e
> > org.apache.axis2.AxisFault: problem accessing the parser. Parser already
> accessed!
> >        at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
> >        at
> org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:83)
> >        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncResponse(HttpCoreNIOSender.java:417)
> >        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:264)
> >        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> >        at
> org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
> >        at
> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
> >        at
> org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
> >        at
> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
> >        at
> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
> >        at
> org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
> >        at
> org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> >        at
> org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
> >        at
> org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
> >        at
> org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> >        at
> org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
> >        at
> org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
> >        at java.util.TimerThread.mainLoop(Timer.java:512)
> >        at java.util.TimerThread.run(Timer.java:462)
> > Caused by: javax.xml.stream.XMLStreamException: problem accessing the
> parser. Parser already accessed!
> >        at
> org.apache.axiom.om.impl.llom.OMStAXWrapper.next(OMStAXWrapper.java:960)
> >        at
> org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serializeNode(StreamingOMSerializer.java:100)
> >        at
> org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:68)
> >        at
> org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:57)
> >        at
> org.apache.axiom.om.impl.util.OMSerializerUtil.serializeByPullStream(OMSerializerUtil.java:548)
> >        at
> org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:232)
> >        at
> org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> >        at
> org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
> >        at
> org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
> >        ... 17 more
> > 2009-05-12 11:39:54,313 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR
> Axis2Sender Unexpected error sending message back
> > org.apache.axis2.AxisFault: IO Error sending response message
> >        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.handleException(HttpCoreNIOSender.java:550)
> >        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncResponse(HttpCoreNIOSender.java:421)
> >        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:264)
> >        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> >        at
> org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
> >        at
> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
> >        at
> org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
> >        at
> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
> >        at
> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
> >        at
> org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
> >        at
> org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> >        at
> org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
> >        at
> org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
> >        at
> org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> >        at
> org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
> >        at
> org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
> >        at java.util.TimerThread.mainLoop(Timer.java:512)
> >        at java.util.TimerThread.run(Timer.java:462)
> > Caused by: org.apache.axis2.AxisFault: problem accessing the parser.
> Parser already accessed!
> >        at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
> >        at
> org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:83)
> >        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncResponse(HttpCoreNIOSender.java:417)
> >        ... 16 more
> > Caused by: javax.xml.stream.XMLStreamException: problem accessing the
> parser. Parser already accessed!
> >        at
> org.apache.axiom.om.impl.llom.OMStAXWrapper.next(OMStAXWrapper.java:960)
> >        at
> org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serializeNode(StreamingOMSerializer.java:100)
> >        at
> org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:68)
> >        at
> org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:57)
> >        at
> org.apache.axiom.om.impl.util.OMSerializerUtil.serializeByPullStream(OMSerializerUtil.java:548)
> >        at
> org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:232)
> >        at
> org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> >        at
> org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
> >        at
> org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
> >        ... 17 more
> > 2009-05-12 11:39:59,756 [10.128.81.1-mcmgunasek-6400]
> [HttpClientWorker-1]  WARN SynapseCallbackReceiver Synapse receive
> > d a response for the request with message Id :
> urn:uuid:45D49B9CD7B413D90D45484550376096-651399307 But a callback is not
> >  registered (anymore) to process this response
> >
> >
> >
> >
> >
> >
> > ________________________________
> > From: indika kumara <in...@gmail.com>
> > To: user@synapse.apache.org
> > Sent: Tuesday, May 12, 2009 1:02:33 AM
> > Subject: Re: Synapse endpoint timeout
> >
> > Hi
> >
> > Error you have got is related with malformed endpoint URL.You can see
> > the timeout handler has done timeout processing.
> >
> > BTW, before sending error back to client, remove existing ‘to’ header.
> > In your fault sequence, add ‘<header name="To" action="remove"/>’
> > before send mediator.
> >
> > Thanks
> > Indika
> >
> > On Tue, May 12, 2009 at 1:10 AM, Murali Krishnan <cm...@yahoo.com>
> wrote:
> >> Hi,
> >> I'm trying out the <timeout> element functionality available for the
> various endpoints in Synapse and am having some difficulty getting it to
> work. Basically I have a synapse proxy service with definition as shown
> below and am forwarding the request to the SimpleStockQuoteService which
> responds after 20 secs (using thread.sleep), but since the endpoint timeout
> value is set to 3secs, it should timeout sooner and return a fault ...but
> I'm getting an error.
> >> Is there an example of how to get this working?
> >> Thanks
> >> Murali
> >>
> >> ---- proxy defn --------
> >>
> >>    <proxy name="DelayedStockQuoteProxy">
> >>        <target>
> >>            <endpoint>
> >>
> >>                    <timeout>
> >>                        <duration>3</duration>
> >>                        <action>fault</action>
> >>                    </timeout>
> >>                </address>
> >>            </endpoint>
> >>            <outSequence>
> >>                <send/>
> >>            </outSequence>
> >>            <faultSequence>
> >>                <log>
> >>                    <property name="fault" value="executing fault
> sequence!"/>
> >>                </log>
> >>                <property name="RESPONSE" value="true" />
> >>                <send/>
> >>            </faultSequence>
> >>        </target>
> >>        <publishWSDL
> uri="file:repository/conf/sample/resources/proxy/sample_proxy_1.wsdl"/>
> >>    </proxy>
> >> </definitions>
> >>
> >> --------- synapse output -------------
> >>
> >> 2009-05-11 15:30:45,820 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR
> HttpCoreNIOSender Malformed destination EPR : /soa
> >> p/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11Endpoint
> >> java.net.MalformedURLException: no protocol:
> /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11Endpoint
> >>        at java.net.URL.<init>(URL.java:567)
> >>        at java.net.URL.<init>(URL.java:464)
> >>        at java.net.URL.<init>(URL.java:413)
> >>        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:317)
> >>        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:256)
> >>        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> >>        at
> org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
> >>        at
> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
> >>        at
> org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
> >>        at
> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
> >>        at
> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
> >>        at
> org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
> >>        at
> org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> >>        at
> org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
> >>        at
> org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
> >>        at
> org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> >>        at
> org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
> >>        at
> org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
> >>        at java.util.TimerThread.mainLoop(Timer.java:512)
> >>        at java.util.TimerThread.run(Timer.java:462)
> >> 2009-05-11 15:30:45,820 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR
> Axis2Sender Unexpected error sending message back
> >> org.apache.axis2.AxisFault: Malformed destination EPR :
> /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11End
> >> point
> >>        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.handleException(HttpCoreNIOSender.java:550)
> >>        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:349)
> >>        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:256)
> >>        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> >>        at
> org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
> >>        at
> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
> >>        at
> org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
> >>        at
> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
> >>        at
> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
> >>        at
> org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
> >>        at
> org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> >>        at
> org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
> >>        at
> org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
> >>        at
> org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> >>        at
> org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
> >>        at
> org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
> >>        at java.util.TimerThread.mainLoop(Timer.java:512)
> >>        at java.util.TimerThread.run(Timer.java:462)
> >> Caused by: java.net.MalformedURLException: no protocol:
> /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11End
> >> point
> >>        at java.net.URL.<init>(URL.java:567)
> >>        at java.net.URL.<init>(URL.java:464)
> >>        at java.net.URL.<init>(URL.java:413)
> >>        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:317)
> >>        ... 16 more
> >>
> >>
> >>
> >>
> >
> >
> >
> >
>



-- 
Ruwan Linton
Senior Software Engineer & Product Manager; WSO2 ESB; http://wso2.org/esb
WSO2 Inc.; http://wso2.org
email: ruwan@wso2.com; cell: +94 77 341 3097
blog: http://ruwansblog.blogspot.com



      

Re: Synapse endpoint timeout

Posted by Ruwan Linton <ru...@gmail.com>.
You could get rid of this issue, if you put a log mediator with full log
level before sending the message out, so the log mediator will build the
message for logging.

Thanks,
Ruwan

On Tue, May 12, 2009 at 9:24 PM, indika kumara <in...@gmail.com>wrote:

> Hi Murali
>
> What is the synapse version you are using. This is happened when try
> to use stream that has already been consumed. This is happened if the
> message has not been built.
>
> Please refer [1]
>
> [1] http://www.mail-archive.com/user@synapse.apache.org/msg00564.html
>
>
> Thanks
> Indika
>
> On Tue, May 12, 2009 at 9:16 PM, Murali Krishnan <cm...@yahoo.com> wrote:
> > Thanks for the reply, indika. I think I made a small progress by removing
> the 'To' header in the fault sequence, but am encountering a different
> exception now somewhere within axiom... Any clues why this may be happening?
> Thanks.
> >
> > 2009-05-12 11:39:54,298 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR
> HttpCoreNIOSender IO Error sending response messag
> > e
> > org.apache.axis2.AxisFault: problem accessing the parser. Parser already
> accessed!
> >        at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
> >        at
> org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:83)
> >        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncResponse(HttpCoreNIOSender.java:417)
> >        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:264)
> >        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> >        at
> org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
> >        at
> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
> >        at
> org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
> >        at
> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
> >        at
> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
> >        at
> org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
> >        at
> org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> >        at
> org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
> >        at
> org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
> >        at
> org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> >        at
> org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
> >        at
> org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
> >        at java.util.TimerThread.mainLoop(Timer.java:512)
> >        at java.util.TimerThread.run(Timer.java:462)
> > Caused by: javax.xml.stream.XMLStreamException: problem accessing the
> parser. Parser already accessed!
> >        at
> org.apache.axiom.om.impl.llom.OMStAXWrapper.next(OMStAXWrapper.java:960)
> >        at
> org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serializeNode(StreamingOMSerializer.java:100)
> >        at
> org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:68)
> >        at
> org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:57)
> >        at
> org.apache.axiom.om.impl.util.OMSerializerUtil.serializeByPullStream(OMSerializerUtil.java:548)
> >        at
> org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:232)
> >        at
> org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> >        at
> org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
> >        at
> org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
> >        ... 17 more
> > 2009-05-12 11:39:54,313 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR
> Axis2Sender Unexpected error sending message back
> > org.apache.axis2.AxisFault: IO Error sending response message
> >        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.handleException(HttpCoreNIOSender.java:550)
> >        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncResponse(HttpCoreNIOSender.java:421)
> >        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:264)
> >        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> >        at
> org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
> >        at
> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
> >        at
> org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
> >        at
> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
> >        at
> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
> >        at
> org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
> >        at
> org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> >        at
> org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
> >        at
> org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
> >        at
> org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> >        at
> org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
> >        at
> org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
> >        at java.util.TimerThread.mainLoop(Timer.java:512)
> >        at java.util.TimerThread.run(Timer.java:462)
> > Caused by: org.apache.axis2.AxisFault: problem accessing the parser.
> Parser already accessed!
> >        at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
> >        at
> org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:83)
> >        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncResponse(HttpCoreNIOSender.java:417)
> >        ... 16 more
> > Caused by: javax.xml.stream.XMLStreamException: problem accessing the
> parser. Parser already accessed!
> >        at
> org.apache.axiom.om.impl.llom.OMStAXWrapper.next(OMStAXWrapper.java:960)
> >        at
> org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serializeNode(StreamingOMSerializer.java:100)
> >        at
> org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:68)
> >        at
> org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:57)
> >        at
> org.apache.axiom.om.impl.util.OMSerializerUtil.serializeByPullStream(OMSerializerUtil.java:548)
> >        at
> org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:232)
> >        at
> org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> >        at
> org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
> >        at
> org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
> >        ... 17 more
> > 2009-05-12 11:39:59,756 [10.128.81.1-mcmgunasek-6400]
> [HttpClientWorker-1]  WARN SynapseCallbackReceiver Synapse receive
> > d a response for the request with message Id :
> urn:uuid:45D49B9CD7B413D90D45484550376096-651399307 But a callback is not
> >  registered (anymore) to process this response
> >
> >
> >
> >
> >
> >
> > ________________________________
> > From: indika kumara <in...@gmail.com>
> > To: user@synapse.apache.org
> > Sent: Tuesday, May 12, 2009 1:02:33 AM
> > Subject: Re: Synapse endpoint timeout
> >
> > Hi
> >
> > Error you have got is related with malformed endpoint URL.You can see
> > the timeout handler has done timeout processing.
> >
> > BTW, before sending error back to client, remove existing ‘to’ header.
> > In your fault sequence, add ‘<header name="To" action="remove"/>’
> > before send mediator.
> >
> > Thanks
> > Indika
> >
> > On Tue, May 12, 2009 at 1:10 AM, Murali Krishnan <cm...@yahoo.com>
> wrote:
> >> Hi,
> >> I'm trying out the <timeout> element functionality available for the
> various endpoints in Synapse and am having some difficulty getting it to
> work. Basically I have a synapse proxy service with definition as shown
> below and am forwarding the request to the SimpleStockQuoteService which
> responds after 20 secs (using thread.sleep), but since the endpoint timeout
> value is set to 3secs, it should timeout sooner and return a fault ...but
> I'm getting an error.
> >> Is there an example of how to get this working?
> >> Thanks
> >> Murali
> >>
> >> ---- proxy defn --------
> >>
> >>    <proxy name="DelayedStockQuoteProxy">
> >>        <target>
> >>            <endpoint>
> >>
> >>                    <timeout>
> >>                        <duration>3</duration>
> >>                        <action>fault</action>
> >>                    </timeout>
> >>                </address>
> >>            </endpoint>
> >>            <outSequence>
> >>                <send/>
> >>            </outSequence>
> >>            <faultSequence>
> >>                <log>
> >>                    <property name="fault" value="executing fault
> sequence!"/>
> >>                </log>
> >>                <property name="RESPONSE" value="true" />
> >>                <send/>
> >>            </faultSequence>
> >>        </target>
> >>        <publishWSDL
> uri="file:repository/conf/sample/resources/proxy/sample_proxy_1.wsdl"/>
> >>    </proxy>
> >> </definitions>
> >>
> >> --------- synapse output -------------
> >>
> >> 2009-05-11 15:30:45,820 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR
> HttpCoreNIOSender Malformed destination EPR : /soa
> >> p/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11Endpoint
> >> java.net.MalformedURLException: no protocol:
> /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11Endpoint
> >>        at java.net.URL.<init>(URL.java:567)
> >>        at java.net.URL.<init>(URL.java:464)
> >>        at java.net.URL.<init>(URL.java:413)
> >>        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:317)
> >>        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:256)
> >>        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> >>        at
> org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
> >>        at
> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
> >>        at
> org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
> >>        at
> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
> >>        at
> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
> >>        at
> org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
> >>        at
> org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> >>        at
> org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
> >>        at
> org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
> >>        at
> org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> >>        at
> org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
> >>        at
> org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
> >>        at java.util.TimerThread.mainLoop(Timer.java:512)
> >>        at java.util.TimerThread.run(Timer.java:462)
> >> 2009-05-11 15:30:45,820 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR
> Axis2Sender Unexpected error sending message back
> >> org.apache.axis2.AxisFault: Malformed destination EPR :
> /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11End
> >> point
> >>        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.handleException(HttpCoreNIOSender.java:550)
> >>        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:349)
> >>        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:256)
> >>        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> >>        at
> org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
> >>        at
> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
> >>        at
> org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
> >>        at
> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
> >>        at
> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
> >>        at
> org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
> >>        at
> org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> >>        at
> org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
> >>        at
> org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
> >>        at
> org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
> >>        at
> org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
> >>        at
> org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
> >>        at java.util.TimerThread.mainLoop(Timer.java:512)
> >>        at java.util.TimerThread.run(Timer.java:462)
> >> Caused by: java.net.MalformedURLException: no protocol:
> /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11End
> >> point
> >>        at java.net.URL.<init>(URL.java:567)
> >>        at java.net.URL.<init>(URL.java:464)
> >>        at java.net.URL.<init>(URL.java:413)
> >>        at
> org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:317)
> >>        ... 16 more
> >>
> >>
> >>
> >>
> >
> >
> >
> >
>



-- 
Ruwan Linton
Senior Software Engineer & Product Manager; WSO2 ESB; http://wso2.org/esb
WSO2 Inc.; http://wso2.org
email: ruwan@wso2.com; cell: +94 77 341 3097
blog: http://ruwansblog.blogspot.com

Re: Synapse endpoint timeout

Posted by Murali Krishnan <cm...@yahoo.com>.
Thanks, Indika. I was trying with synapse 1.2 release... I'll try using 1.2beta (or with the patch in jira)
-murali




________________________________
From: indika kumara <in...@gmail.com>
To: user@synapse.apache.org
Sent: Tuesday, May 12, 2009 11:54:54 AM
Subject: Re: Synapse endpoint timeout

Hi Murali

What is the synapse version you are using. This is happened when try
to use stream that has already been consumed. This is happened if the
message has not been built.

Please refer [1]

[1] http://www.mail-archive.com/user@synapse.apache.org/msg00564.html


Thanks
Indika

On Tue, May 12, 2009 at 9:16 PM, Murali Krishnan <cm...@yahoo.com> wrote:
> Thanks for the reply, indika. I think I made a small progress by removing the 'To' header in the fault sequence, but am encountering a different exception now somewhere within axiom... Any clues why this may be happening? Thanks.
>
> 2009-05-12 11:39:54,298 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR HttpCoreNIOSender IO Error sending response messag
> e
> org.apache.axis2.AxisFault: problem accessing the parser. Parser already accessed!
>        at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
>        at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:83)
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncResponse(HttpCoreNIOSender.java:417)
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:264)
>        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
>        at org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
>        at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
>        at org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
>        at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
>        at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
>        at org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>        at org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
>        at org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>        at org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
>        at org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
>        at java.util.TimerThread.mainLoop(Timer.java:512)
>        at java.util.TimerThread.run(Timer.java:462)
> Caused by: javax.xml.stream.XMLStreamException: problem accessing the parser. Parser already accessed!
>        at org.apache.axiom.om.impl.llom.OMStAXWrapper.next(OMStAXWrapper.java:960)
>        at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serializeNode(StreamingOMSerializer.java:100)
>        at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:68)
>        at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:57)
>        at org.apache.axiom.om.impl.util.OMSerializerUtil.serializeByPullStream(OMSerializerUtil.java:548)
>        at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:232)
>        at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
>        at org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
>        at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
>        ... 17 more
> 2009-05-12 11:39:54,313 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR Axis2Sender Unexpected error sending message back
> org.apache.axis2.AxisFault: IO Error sending response message
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.handleException(HttpCoreNIOSender.java:550)
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncResponse(HttpCoreNIOSender.java:421)
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:264)
>        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
>        at org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
>        at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
>        at org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
>        at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
>        at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
>        at org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>        at org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
>        at org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>        at org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
>        at org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
>        at java.util.TimerThread.mainLoop(Timer.java:512)
>        at java.util.TimerThread.run(Timer.java:462)
> Caused by: org.apache.axis2.AxisFault: problem accessing the parser. Parser already accessed!
>        at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
>        at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:83)
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncResponse(HttpCoreNIOSender.java:417)
>        ... 16 more
> Caused by: javax.xml.stream.XMLStreamException: problem accessing the parser. Parser already accessed!
>        at org.apache.axiom.om.impl.llom.OMStAXWrapper.next(OMStAXWrapper.java:960)
>        at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serializeNode(StreamingOMSerializer.java:100)
>        at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:68)
>        at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:57)
>        at org.apache.axiom.om.impl.util.OMSerializerUtil.serializeByPullStream(OMSerializerUtil.java:548)
>        at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:232)
>        at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
>        at org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
>        at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
>        ... 17 more
> 2009-05-12 11:39:59,756 [10.128.81.1-mcmgunasek-6400] [HttpClientWorker-1]  WARN SynapseCallbackReceiver Synapse receive
> d a response for the request with message Id : urn:uuid:45D49B9CD7B413D90D45484550376096-651399307 But a callback is not
>  registered (anymore) to process this response
>
>
>
>
>
>
> ________________________________
> From: indika kumara <in...@gmail.com>
> To: user@synapse.apache.org
> Sent: Tuesday, May 12, 2009 1:02:33 AM
> Subject: Re: Synapse endpoint timeout
>
> Hi
>
> Error you have got is related with malformed endpoint URL.You can see
> the timeout handler has done timeout processing.
>
> BTW, before sending error back to client, remove existing ‘to’ header.
> In your fault sequence, add ‘<header name="To" action="remove"/>’
> before send mediator.
>
> Thanks
> Indika
>
> On Tue, May 12, 2009 at 1:10 AM, Murali Krishnan <cm...@yahoo.com> wrote:
>> Hi,
>> I'm trying out the <timeout> element functionality available for the various endpoints in Synapse and am having some difficulty getting it to work. Basically I have a synapse proxy service with definition as shown below and am forwarding the request to the SimpleStockQuoteService which responds after 20 secs (using thread.sleep), but since the endpoint timeout value is set to 3secs, it should timeout sooner and return a fault ...but I'm getting an error.
>> Is there an example of how to get this working?
>> Thanks
>> Murali
>>
>> ---- proxy defn --------
>>
>>    <proxy name="DelayedStockQuoteProxy">
>>        <target>
>>            <endpoint>
>>
>>                    <timeout>
>>                        <duration>3</duration>
>>                        <action>fault</action>
>>                    </timeout>
>>                </address>
>>            </endpoint>
>>            <outSequence>
>>                <send/>
>>            </outSequence>
>>            <faultSequence>
>>                <log>
>>                    <property name="fault" value="executing fault sequence!"/>
>>                </log>
>>                <property name="RESPONSE" value="true" />
>>                <send/>
>>            </faultSequence>
>>        </target>
>>        <publishWSDL uri="file:repository/conf/sample/resources/proxy/sample_proxy_1.wsdl"/>
>>    </proxy>
>> </definitions>
>>
>> --------- synapse output -------------
>>
>> 2009-05-11 15:30:45,820 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR HttpCoreNIOSender Malformed destination EPR : /soa
>> p/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11Endpoint
>> java.net.MalformedURLException: no protocol: /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11Endpoint
>>        at java.net.URL.<init>(URL.java:567)
>>        at java.net.URL.<init>(URL.java:464)
>>        at java.net.URL.<init>(URL.java:413)
>>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:317)
>>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:256)
>>        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
>>        at org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
>>        at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
>>        at org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
>>        at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
>>        at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
>>        at org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
>>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>>        at org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
>>        at org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
>>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>>        at org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
>>        at org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
>>        at java.util.TimerThread.mainLoop(Timer.java:512)
>>        at java.util.TimerThread.run(Timer.java:462)
>> 2009-05-11 15:30:45,820 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR Axis2Sender Unexpected error sending message back
>> org.apache.axis2.AxisFault: Malformed destination EPR : /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11End
>> point
>>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.handleException(HttpCoreNIOSender.java:550)
>>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:349)
>>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:256)
>>        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
>>        at org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
>>        at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
>>        at org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
>>        at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
>>        at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
>>        at org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
>>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>>        at org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
>>        at org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
>>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>>        at org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
>>        at org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
>>        at java.util.TimerThread.mainLoop(Timer.java:512)
>>        at java.util.TimerThread.run(Timer.java:462)
>> Caused by: java.net.MalformedURLException: no protocol: /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11End
>> point
>>        at java.net.URL.<init>(URL.java:567)
>>        at java.net.URL.<init>(URL.java:464)
>>        at java.net.URL.<init>(URL.java:413)
>>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:317)
>>        ... 16 more
>>
>>
>>
>>
>
>
>
>



      

Re: Synapse endpoint timeout

Posted by indika kumara <in...@gmail.com>.
Hi Murali

What is the synapse version you are using. This is happened when try
to use stream that has already been consumed. This is happened if the
message has not been built.

Please refer [1]

[1] http://www.mail-archive.com/user@synapse.apache.org/msg00564.html


Thanks
Indika

On Tue, May 12, 2009 at 9:16 PM, Murali Krishnan <cm...@yahoo.com> wrote:
> Thanks for the reply, indika. I think I made a small progress by removing the 'To' header in the fault sequence, but am encountering a different exception now somewhere within axiom... Any clues why this may be happening? Thanks.
>
> 2009-05-12 11:39:54,298 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR HttpCoreNIOSender IO Error sending response messag
> e
> org.apache.axis2.AxisFault: problem accessing the parser. Parser already accessed!
>        at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
>        at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:83)
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncResponse(HttpCoreNIOSender.java:417)
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:264)
>        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
>        at org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
>        at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
>        at org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
>        at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
>        at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
>        at org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>        at org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
>        at org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>        at org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
>        at org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
>        at java.util.TimerThread.mainLoop(Timer.java:512)
>        at java.util.TimerThread.run(Timer.java:462)
> Caused by: javax.xml.stream.XMLStreamException: problem accessing the parser. Parser already accessed!
>        at org.apache.axiom.om.impl.llom.OMStAXWrapper.next(OMStAXWrapper.java:960)
>        at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serializeNode(StreamingOMSerializer.java:100)
>        at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:68)
>        at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:57)
>        at org.apache.axiom.om.impl.util.OMSerializerUtil.serializeByPullStream(OMSerializerUtil.java:548)
>        at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:232)
>        at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
>        at org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
>        at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
>        ... 17 more
> 2009-05-12 11:39:54,313 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR Axis2Sender Unexpected error sending message back
> org.apache.axis2.AxisFault: IO Error sending response message
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.handleException(HttpCoreNIOSender.java:550)
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncResponse(HttpCoreNIOSender.java:421)
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:264)
>        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
>        at org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
>        at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
>        at org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
>        at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
>        at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
>        at org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>        at org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
>        at org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>        at org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
>        at org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
>        at java.util.TimerThread.mainLoop(Timer.java:512)
>        at java.util.TimerThread.run(Timer.java:462)
> Caused by: org.apache.axis2.AxisFault: problem accessing the parser. Parser already accessed!
>        at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
>        at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:83)
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncResponse(HttpCoreNIOSender.java:417)
>        ... 16 more
> Caused by: javax.xml.stream.XMLStreamException: problem accessing the parser. Parser already accessed!
>        at org.apache.axiom.om.impl.llom.OMStAXWrapper.next(OMStAXWrapper.java:960)
>        at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serializeNode(StreamingOMSerializer.java:100)
>        at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:68)
>        at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:57)
>        at org.apache.axiom.om.impl.util.OMSerializerUtil.serializeByPullStream(OMSerializerUtil.java:548)
>        at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:232)
>        at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
>        at org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
>        at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
>        ... 17 more
> 2009-05-12 11:39:59,756 [10.128.81.1-mcmgunasek-6400] [HttpClientWorker-1]  WARN SynapseCallbackReceiver Synapse receive
> d a response for the request with message Id : urn:uuid:45D49B9CD7B413D90D45484550376096-651399307 But a callback is not
>  registered (anymore) to process this response
>
>
>
>
>
>
> ________________________________
> From: indika kumara <in...@gmail.com>
> To: user@synapse.apache.org
> Sent: Tuesday, May 12, 2009 1:02:33 AM
> Subject: Re: Synapse endpoint timeout
>
> Hi
>
> Error you have got is related with malformed endpoint URL.You can see
> the timeout handler has done timeout processing.
>
> BTW, before sending error back to client, remove existing ‘to’ header.
> In your fault sequence, add ‘<header name="To" action="remove"/>’
> before send mediator.
>
> Thanks
> Indika
>
> On Tue, May 12, 2009 at 1:10 AM, Murali Krishnan <cm...@yahoo.com> wrote:
>> Hi,
>> I'm trying out the <timeout> element functionality available for the various endpoints in Synapse and am having some difficulty getting it to work. Basically I have a synapse proxy service with definition as shown below and am forwarding the request to the SimpleStockQuoteService which responds after 20 secs (using thread.sleep), but since the endpoint timeout value is set to 3secs, it should timeout sooner and return a fault ...but I'm getting an error.
>> Is there an example of how to get this working?
>> Thanks
>> Murali
>>
>> ---- proxy defn --------
>>
>>    <proxy name="DelayedStockQuoteProxy">
>>        <target>
>>            <endpoint>
>>
>>                    <timeout>
>>                        <duration>3</duration>
>>                        <action>fault</action>
>>                    </timeout>
>>                </address>
>>            </endpoint>
>>            <outSequence>
>>                <send/>
>>            </outSequence>
>>            <faultSequence>
>>                <log>
>>                    <property name="fault" value="executing fault sequence!"/>
>>                </log>
>>                <property name="RESPONSE" value="true" />
>>                <send/>
>>            </faultSequence>
>>        </target>
>>        <publishWSDL uri="file:repository/conf/sample/resources/proxy/sample_proxy_1.wsdl"/>
>>    </proxy>
>> </definitions>
>>
>> --------- synapse output -------------
>>
>> 2009-05-11 15:30:45,820 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR HttpCoreNIOSender Malformed destination EPR : /soa
>> p/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11Endpoint
>> java.net.MalformedURLException: no protocol: /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11Endpoint
>>        at java.net.URL.<init>(URL.java:567)
>>        at java.net.URL.<init>(URL.java:464)
>>        at java.net.URL.<init>(URL.java:413)
>>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:317)
>>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:256)
>>        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
>>        at org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
>>        at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
>>        at org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
>>        at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
>>        at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
>>        at org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
>>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>>        at org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
>>        at org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
>>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>>        at org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
>>        at org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
>>        at java.util.TimerThread.mainLoop(Timer.java:512)
>>        at java.util.TimerThread.run(Timer.java:462)
>> 2009-05-11 15:30:45,820 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR Axis2Sender Unexpected error sending message back
>> org.apache.axis2.AxisFault: Malformed destination EPR : /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11End
>> point
>>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.handleException(HttpCoreNIOSender.java:550)
>>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:349)
>>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:256)
>>        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
>>        at org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
>>        at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
>>        at org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
>>        at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
>>        at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
>>        at org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
>>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>>        at org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
>>        at org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
>>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>>        at org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
>>        at org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
>>        at java.util.TimerThread.mainLoop(Timer.java:512)
>>        at java.util.TimerThread.run(Timer.java:462)
>> Caused by: java.net.MalformedURLException: no protocol: /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11End
>> point
>>        at java.net.URL.<init>(URL.java:567)
>>        at java.net.URL.<init>(URL.java:464)
>>        at java.net.URL.<init>(URL.java:413)
>>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:317)
>>        ... 16 more
>>
>>
>>
>>
>
>
>
>

Re: Synapse endpoint timeout

Posted by Murali Krishnan <cm...@yahoo.com>.
Thanks for the reply, indika. I think I made a small progress by removing the 'To' header in the fault sequence, but am encountering a different exception now somewhere within axiom... Any clues why this may be happening? Thanks.

2009-05-12 11:39:54,298 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR HttpCoreNIOSender IO Error sending response messag
e
org.apache.axis2.AxisFault: problem accessing the parser. Parser already accessed!
        at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
        at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:83)
        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncResponse(HttpCoreNIOSender.java:417)
        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:264)
        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
        at org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
        at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
        at org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
        at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
        at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
        at org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
        at org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
        at org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
        at org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
        at org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
        at java.util.TimerThread.mainLoop(Timer.java:512)
        at java.util.TimerThread.run(Timer.java:462)
Caused by: javax.xml.stream.XMLStreamException: problem accessing the parser. Parser already accessed!
        at org.apache.axiom.om.impl.llom.OMStAXWrapper.next(OMStAXWrapper.java:960)
        at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serializeNode(StreamingOMSerializer.java:100)
        at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:68)
        at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:57)
        at org.apache.axiom.om.impl.util.OMSerializerUtil.serializeByPullStream(OMSerializerUtil.java:548)
        at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:232)
        at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
        at org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
        at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
        ... 17 more
2009-05-12 11:39:54,313 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR Axis2Sender Unexpected error sending message back
org.apache.axis2.AxisFault: IO Error sending response message
        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.handleException(HttpCoreNIOSender.java:550)
        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncResponse(HttpCoreNIOSender.java:421)
        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:264)
        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
        at org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
        at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
        at org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
        at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
        at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
        at org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
        at org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
        at org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
        at org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
        at org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
        at java.util.TimerThread.mainLoop(Timer.java:512)
        at java.util.TimerThread.run(Timer.java:462)
Caused by: org.apache.axis2.AxisFault: problem accessing the parser. Parser already accessed!
        at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
        at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:83)
        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncResponse(HttpCoreNIOSender.java:417)
        ... 16 more
Caused by: javax.xml.stream.XMLStreamException: problem accessing the parser. Parser already accessed!
        at org.apache.axiom.om.impl.llom.OMStAXWrapper.next(OMStAXWrapper.java:960)
        at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serializeNode(StreamingOMSerializer.java:100)
        at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:68)
        at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:57)
        at org.apache.axiom.om.impl.util.OMSerializerUtil.serializeByPullStream(OMSerializerUtil.java:548)
        at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:232)
        at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
        at org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
        at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
        ... 17 more
2009-05-12 11:39:59,756 [10.128.81.1-mcmgunasek-6400] [HttpClientWorker-1]  WARN SynapseCallbackReceiver Synapse receive
d a response for the request with message Id : urn:uuid:45D49B9CD7B413D90D45484550376096-651399307 But a callback is not
 registered (anymore) to process this response






________________________________
From: indika kumara <in...@gmail.com>
To: user@synapse.apache.org
Sent: Tuesday, May 12, 2009 1:02:33 AM
Subject: Re: Synapse endpoint timeout

Hi

Error you have got is related with malformed endpoint URL.You can see
the timeout handler has done timeout processing.

BTW, before sending error back to client, remove existing ‘to’ header.
In your fault sequence, add ‘<header name="To" action="remove"/>’
before send mediator.

Thanks
Indika

On Tue, May 12, 2009 at 1:10 AM, Murali Krishnan <cm...@yahoo.com> wrote:
> Hi,
> I'm trying out the <timeout> element functionality available for the various endpoints in Synapse and am having some difficulty getting it to work. Basically I have a synapse proxy service with definition as shown below and am forwarding the request to the SimpleStockQuoteService which responds after 20 secs (using thread.sleep), but since the endpoint timeout value is set to 3secs, it should timeout sooner and return a fault ...but I'm getting an error.
> Is there an example of how to get this working?
> Thanks
> Murali
>
> ---- proxy defn --------
>
>    <proxy name="DelayedStockQuoteProxy">
>        <target>
>            <endpoint>
>
>                    <timeout>
>                        <duration>3</duration>
>                        <action>fault</action>
>                    </timeout>
>                </address>
>            </endpoint>
>            <outSequence>
>                <send/>
>            </outSequence>
>            <faultSequence>
>                <log>
>                    <property name="fault" value="executing fault sequence!"/>
>                </log>
>                <property name="RESPONSE" value="true" />
>                <send/>
>            </faultSequence>
>        </target>
>        <publishWSDL uri="file:repository/conf/sample/resources/proxy/sample_proxy_1.wsdl"/>
>    </proxy>
> </definitions>
>
> --------- synapse output -------------
>
> 2009-05-11 15:30:45,820 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR HttpCoreNIOSender Malformed destination EPR : /soa
> p/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11Endpoint
> java.net.MalformedURLException: no protocol: /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11Endpoint
>        at java.net.URL.<init>(URL.java:567)
>        at java.net.URL.<init>(URL.java:464)
>        at java.net.URL.<init>(URL.java:413)
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:317)
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:256)
>        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
>        at org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
>        at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
>        at org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
>        at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
>        at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
>        at org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>        at org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
>        at org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>        at org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
>        at org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
>        at java.util.TimerThread.mainLoop(Timer.java:512)
>        at java.util.TimerThread.run(Timer.java:462)
> 2009-05-11 15:30:45,820 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR Axis2Sender Unexpected error sending message back
> org.apache.axis2.AxisFault: Malformed destination EPR : /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11End
> point
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.handleException(HttpCoreNIOSender.java:550)
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:349)
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:256)
>        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
>        at org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
>        at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
>        at org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
>        at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
>        at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
>        at org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>        at org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
>        at org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>        at org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
>        at org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
>        at java.util.TimerThread.mainLoop(Timer.java:512)
>        at java.util.TimerThread.run(Timer.java:462)
> Caused by: java.net.MalformedURLException: no protocol: /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11End
> point
>        at java.net.URL.<init>(URL.java:567)
>        at java.net.URL.<init>(URL.java:464)
>        at java.net.URL.<init>(URL.java:413)
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:317)
>        ... 16 more
>
>
>
>



      

Re: Synapse endpoint timeout

Posted by indika kumara <in...@gmail.com>.
Hi

Error you have got is related with malformed endpoint URL.You can see
the timeout handler has done timeout processing.

BTW, before sending error back to client, remove existing ‘to’ header.
In your fault sequence, add ‘<header name="To" action="remove"/>’
before send mediator.

Thanks
Indika

On Tue, May 12, 2009 at 1:10 AM, Murali Krishnan <cm...@yahoo.com> wrote:
> Hi,
> I'm trying out the <timeout> element functionality available for the various endpoints in Synapse and am having some difficulty getting it to work. Basically I have a synapse proxy service with definition as shown below and am forwarding the request to the SimpleStockQuoteService which responds after 20 secs (using thread.sleep), but since the endpoint timeout value is set to 3secs, it should timeout sooner and return a fault ...but I'm getting an error.
> Is there an example of how to get this working?
> Thanks
> Murali
>
> ---- proxy defn --------
>
>    <proxy name="DelayedStockQuoteProxy">
>        <target>
>            <endpoint>
>
>                    <timeout>
>                        <duration>3</duration>
>                        <action>fault</action>
>                    </timeout>
>                </address>
>            </endpoint>
>            <outSequence>
>                <send/>
>            </outSequence>
>            <faultSequence>
>                <log>
>                    <property name="fault" value="executing fault sequence!"/>
>                </log>
>                <property name="RESPONSE" value="true" />
>                <send/>
>            </faultSequence>
>        </target>
>        <publishWSDL uri="file:repository/conf/sample/resources/proxy/sample_proxy_1.wsdl"/>
>    </proxy>
> </definitions>
>
> --------- synapse output -------------
>
> 2009-05-11 15:30:45,820 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR HttpCoreNIOSender Malformed destination EPR : /soa
> p/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11Endpoint
> java.net.MalformedURLException: no protocol: /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11Endpoint
>        at java.net.URL.<init>(URL.java:567)
>        at java.net.URL.<init>(URL.java:464)
>        at java.net.URL.<init>(URL.java:413)
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:317)
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:256)
>        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
>        at org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
>        at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
>        at org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
>        at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
>        at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
>        at org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>        at org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
>        at org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>        at org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
>        at org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
>        at java.util.TimerThread.mainLoop(Timer.java:512)
>        at java.util.TimerThread.run(Timer.java:462)
> 2009-05-11 15:30:45,820 [10.128.81.1-mcmgunasek-6400] [Timer-0] ERROR Axis2Sender Unexpected error sending message back
> org.apache.axis2.AxisFault: Malformed destination EPR : /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11End
> point
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.handleException(HttpCoreNIOSender.java:550)
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:349)
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreNIOSender.java:256)
>        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
>        at org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:138)
>        at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:219)
>        at org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:154)
>        at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:58)
>        at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:125)
>        at org.apache.synapse.mediators.MediatorFaultHandler.onFault(MediatorFaultHandler.java:79)
>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>        at org.apache.synapse.endpoints.DefaultEndpoint.onFault(DefaultEndpoint.java:192)
>        at org.apache.synapse.endpoints.AddressEndpoint.onFault(AddressEndpoint.java:203)
>        at org.apache.synapse.FaultHandler.handleFault(FaultHandler.java:53)
>        at org.apache.synapse.core.axis2.TimeoutHandler.processCallbacks(TimeoutHandler.java:123)
>        at org.apache.synapse.core.axis2.TimeoutHandler.run(TimeoutHandler.java:78)
>        at java.util.TimerThread.mainLoop(Timer.java:512)
>        at java.util.TimerThread.run(Timer.java:462)
> Caused by: java.net.MalformedURLException: no protocol: /soap/DelayedStockQuoteProxy.DelayedStockQuoteProxyHttpSoap11End
> point
>        at java.net.URL.<init>(URL.java:567)
>        at java.net.URL.<init>(URL.java:464)
>        at java.net.URL.<init>(URL.java:413)
>        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRequest(HttpCoreNIOSender.java:317)
>        ... 16 more
>
>
>
>