You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by Benamin <be...@bisonline.com> on 2007/05/15 05:48:37 UTC
question about http consumer
I have created a successful example of http consumer that sends message to an
SE, and then returns that message back out to http using the client.html
that was provided with the bridge example.
I have just one issue. After I get a status: 200 and my message back, if I
sit and wait maybe a minute, ServiceMix logs an exception. I am listing it
below. Is this a problem? If so, how can I fix it?
ERROR - MyComponent - Error processing exchange InOut[
id: ID:massive-64664-1179200462025-2:0
status: Done
role: provider
service:
{http://servicemix.apache.org/servicemanagerassembly}ServiceManagerEnqueue
endpoint: endpoint
in: Unable to display: org.mortbay.jetty.EofException
out: Unable to display: org.mortbay.jetty.EofException
]
javax.jbi.messaging.MessagingException: Out not supported
at
org.apache.servicemix.jbi.messaging.MessageExchangeImpl.setMessage(MessageExchangeImpl.java:317)
at
org.apache.servicemix.samples.serviceManagerAssembly.MyEndpoint.process(MyEndpoint.java:313)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:489)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:441)
at
org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:593)
at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Thread.java:595)
ERROR - MyComponent - Error setting exchange status to
ERROR
javax.jbi.messaging.MessagingException: illegal call to send / sendSync
at
org.apache.servicemix.jbi.messaging.MessageExchangeImpl.handleSend(MessageExchangeImpl.java:571)
at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryChannelImpl.java:370)
at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.send(DeliveryChannelImpl.java:417)
at
org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:58)
at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:593)
at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Thread.java:595)
--
View this message in context: http://www.nabble.com/question-about-http-consumer-tf3756165s12049.html#a10616138
Sent from the ServiceMix - User mailing list archive at Nabble.com.
Re: question about http consumer
Posted by Guillaume Nodet <gn...@gmail.com>.
An exchange goes from one the consumer to the provider several times in its
life cycle. For an InOut exchange, the usual steps are
consumer -> provider (status = active, in message)
provider -> consumer (status = active, out message)
consumer -> provider (status = done)
So in your SE, you need to check the status of the exchange before
processing it.
The exception is thrown because you try to set the out message on an
exchange
in a DONE status certainly.
On 5/15/07, Benamin <be...@bisonline.com> wrote:
>
>
> What do you mean by checking the status in my component? And how would
> this
> cause the exception?
>
> thanks.
>
>
>
> tterm wrote:
> >
> > Is it possible that you don't check the status in your component?
> >
> > Cheers,
> > Thomas
> >
> > Benamin wrote:
> >> I have created a successful example of http consumer that sends message
> >> to an
> >> SE, and then returns that message back out to http using the
> client.html
> >> that was provided with the bridge example.
> >>
> >> I have just one issue. After I get a status: 200 and my message back,
> if
> >> I
> >> sit and wait maybe a minute, ServiceMix logs an exception. I am
> listing
> >> it
> >> below. Is this a problem? If so, how can I fix it?
> >>
> >> ERROR - MyComponent - Error processing exchange
> InOut[
> >> id: ID:massive-64664-1179200462025-2:0
> >> status: Done
> >> role: provider
> >> service:
> >> {
> http://servicemix.apache.org/servicemanagerassembly}ServiceManagerEnqueue
> >> endpoint: endpoint
> >> in: Unable to display: org.mortbay.jetty.EofException
> >> out: Unable to display: org.mortbay.jetty.EofException
> >> ]
> >> javax.jbi.messaging.MessagingException: Out not supported
> >> at
> >> org.apache.servicemix.jbi.messaging.MessageExchangeImpl.setMessage(
> MessageExchangeImpl.java:317)
> >> at
> >> org.apache.servicemix.samples.serviceManagerAssembly.MyEndpoint.process
> (MyEndpoint.java:313)
> >> at
> >> org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(
> AsyncBaseLifeCycle.java:489)
> >> at
> >> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(
> AsyncBaseLifeCycle.java:441)
> >> at
> >> org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
> BaseLifeCycle.java:46)
> >> at
> >> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
> DeliveryChannelImpl.java:593)
> >> at
> >> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
> AbstractFlow.java:174)
> >> at
> >> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(
> SedaFlow.java:176)
> >> at
> >> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java
> :134)
> >> at
> >>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
> (ThreadPoolExecutor.java:665)
> >> at
> >>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
> (ThreadPoolExecutor.java:690)
> >> at java.lang.Thread.run(Thread.java:595)
> >> ERROR - MyComponent - Error setting exchange status
> to
> >> ERROR
> >> javax.jbi.messaging.MessagingException: illegal call to send / sendSync
> >> at
> >> org.apache.servicemix.jbi.messaging.MessageExchangeImpl.handleSend(
> MessageExchangeImpl.java:571)
> >> at
> >> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(
> DeliveryChannelImpl.java:370)
> >> at
> >> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.send(
> DeliveryChannelImpl.java:417)
> >> at
> >> org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(
> BaseLifeCycle.java:58)
> >> at
> >> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(
> DeliveryChannelImpl.java:593)
> >> at
> >> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(
> AbstractFlow.java:174)
> >> at
> >> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(
> SedaFlow.java:176)
> >> at
> >> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java
> :134)
> >> at
> >>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask
> (ThreadPoolExecutor.java:665)
> >> at
> >>
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run
> (ThreadPoolExecutor.java:690)
> >> at java.lang.Thread.run(Thread.java:595)
> >
> >
> > --
> > Thomas Termin
> > _______________________________
> > blue elephant systems GmbH
> > Wollgrasweg 49
> > D-70599 Stuttgart
> >
> > Tel : (+49) 0711 - 45 10 17 676
> > Fax : (+49) 0711 - 45 10 17 573
> > WWW : http://www.blue-elephant-systems.com
> > Email : Thomas.Termin@blue-elephant-systems.com
> >
> > blue elephant systems GmbH
> > Firmensitz : Wollgrasweg 49, D-70599 Stuttgart
> > Registergericht : Amtsgericht Stuttgart, HRB 24106
> > Geschäftsführer : Holger Dietrich, Thomas Gentsch, Joachim Hoernle
> >
> >
> >
>
> --
> View this message in context:
> http://www.nabble.com/question-about-http-consumer-tf3756165s12049.html#a10623483
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>
--
Cheers,
Guillaume Nodet
------------------------
Principal Engineer, IONA
Blog: http://gnodet.blogspot.com/
Re: question about http consumer
Posted by Benamin <be...@bisonline.com>.
What do you mean by checking the status in my component? And how would this
cause the exception?
thanks.
tterm wrote:
>
> Is it possible that you don't check the status in your component?
>
> Cheers,
> Thomas
>
> Benamin wrote:
>> I have created a successful example of http consumer that sends message
>> to an
>> SE, and then returns that message back out to http using the client.html
>> that was provided with the bridge example.
>>
>> I have just one issue. After I get a status: 200 and my message back, if
>> I
>> sit and wait maybe a minute, ServiceMix logs an exception. I am listing
>> it
>> below. Is this a problem? If so, how can I fix it?
>>
>> ERROR - MyComponent - Error processing exchange InOut[
>> id: ID:massive-64664-1179200462025-2:0
>> status: Done
>> role: provider
>> service:
>> {http://servicemix.apache.org/servicemanagerassembly}ServiceManagerEnqueue
>> endpoint: endpoint
>> in: Unable to display: org.mortbay.jetty.EofException
>> out: Unable to display: org.mortbay.jetty.EofException
>> ]
>> javax.jbi.messaging.MessagingException: Out not supported
>> at
>> org.apache.servicemix.jbi.messaging.MessageExchangeImpl.setMessage(MessageExchangeImpl.java:317)
>> at
>> org.apache.servicemix.samples.serviceManagerAssembly.MyEndpoint.process(MyEndpoint.java:313)
>> at
>> org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:489)
>> at
>> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:441)
>> at
>> org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
>> at
>> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:593)
>> at
>> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
>> at
>> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
>> at
>> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
>> at
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
>> at
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
>> at java.lang.Thread.run(Thread.java:595)
>> ERROR - MyComponent - Error setting exchange status to
>> ERROR
>> javax.jbi.messaging.MessagingException: illegal call to send / sendSync
>> at
>> org.apache.servicemix.jbi.messaging.MessageExchangeImpl.handleSend(MessageExchangeImpl.java:571)
>> at
>> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryChannelImpl.java:370)
>> at
>> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.send(DeliveryChannelImpl.java:417)
>> at
>> org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:58)
>> at
>> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:593)
>> at
>> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
>> at
>> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
>> at
>> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
>> at
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
>> at
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
>> at java.lang.Thread.run(Thread.java:595)
>
>
> --
> Thomas Termin
> _______________________________
> blue elephant systems GmbH
> Wollgrasweg 49
> D-70599 Stuttgart
>
> Tel : (+49) 0711 - 45 10 17 676
> Fax : (+49) 0711 - 45 10 17 573
> WWW : http://www.blue-elephant-systems.com
> Email : Thomas.Termin@blue-elephant-systems.com
>
> blue elephant systems GmbH
> Firmensitz : Wollgrasweg 49, D-70599 Stuttgart
> Registergericht : Amtsgericht Stuttgart, HRB 24106
> Geschäftsführer : Holger Dietrich, Thomas Gentsch, Joachim Hoernle
>
>
>
--
View this message in context: http://www.nabble.com/question-about-http-consumer-tf3756165s12049.html#a10623483
Sent from the ServiceMix - User mailing list archive at Nabble.com.
Re: question about http consumer
Posted by Thomas TERMIN <tt...@blue-elephant-systems.com>.
Is it possible that you don't check the status in your component?
Cheers,
Thomas
Benamin wrote:
> I have created a successful example of http consumer that sends message to an
> SE, and then returns that message back out to http using the client.html
> that was provided with the bridge example.
>
> I have just one issue. After I get a status: 200 and my message back, if I
> sit and wait maybe a minute, ServiceMix logs an exception. I am listing it
> below. Is this a problem? If so, how can I fix it?
>
> ERROR - MyComponent - Error processing exchange InOut[
> id: ID:massive-64664-1179200462025-2:0
> status: Done
> role: provider
> service:
> {http://servicemix.apache.org/servicemanagerassembly}ServiceManagerEnqueue
> endpoint: endpoint
> in: Unable to display: org.mortbay.jetty.EofException
> out: Unable to display: org.mortbay.jetty.EofException
> ]
> javax.jbi.messaging.MessagingException: Out not supported
> at
> org.apache.servicemix.jbi.messaging.MessageExchangeImpl.setMessage(MessageExchangeImpl.java:317)
> at
> org.apache.servicemix.samples.serviceManagerAssembly.MyEndpoint.process(MyEndpoint.java:313)
> at
> org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:489)
> at
> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:441)
> at
> org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
> at
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:593)
> at
> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
> at java.lang.Thread.run(Thread.java:595)
> ERROR - MyComponent - Error setting exchange status to
> ERROR
> javax.jbi.messaging.MessagingException: illegal call to send / sendSync
> at
> org.apache.servicemix.jbi.messaging.MessageExchangeImpl.handleSend(MessageExchangeImpl.java:571)
> at
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryChannelImpl.java:370)
> at
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.send(DeliveryChannelImpl.java:417)
> at
> org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:58)
> at
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:593)
> at
> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
> at java.lang.Thread.run(Thread.java:595)
--
Thomas Termin
_______________________________
blue elephant systems GmbH
Wollgrasweg 49
D-70599 Stuttgart
Tel : (+49) 0711 - 45 10 17 676
Fax : (+49) 0711 - 45 10 17 573
WWW : http://www.blue-elephant-systems.com
Email : Thomas.Termin@blue-elephant-systems.com
blue elephant systems GmbH
Firmensitz : Wollgrasweg 49, D-70599 Stuttgart
Registergericht : Amtsgericht Stuttgart, HRB 24106
Geschäftsführer : Holger Dietrich, Thomas Gentsch, Joachim Hoernle