avax.jbi.messaging.MessagingException in the ConsumerProcessor
--------------------------------------------------------------
Key: SMXCOMP-469
URL: https://issues.apache.org/activemq/browse/SMXCOMP-469
Project: ServiceMix Components
Issue Type: Bug
Components: servicemix-http
Reporter: Volodymyr Zhabiuk
In the ConsumerProcessor, when the http response is formed and sent back to the
requesting party, the following error occured:
{code}
SEVERE: Error processing exchange
org.apache.servicemix.jbi.runtime.impl.inouti...@158aac4
java.lang.Exception: HTTP request has timed out
at
org.apache.servicemix.http.processors.ConsumerProcessor.process(ConsumerProcessor.java:96)
at
org.apache.servicemix.soap.SoapEndpoint.process(SoapEndpoint.java:368)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:621)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:592)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchangeInTx(AsyncBaseLifeCycle.java:477)
at
org.apache.servicemix.common.AsyncBaseLifeCycle$2.run(AsyncBaseLifeCycle.java:347)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown
Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Mar 3, 2009 4:27:27 PM org.apache.servicemix.common.AsyncBaseLifeCycle
processExchangeInTx
SEVERE: Error setting exchange status to ERROR
javax.jbi.messaging.MessagingException: Can not send a terminated exchange
at
org.apache.servicemix.jbi.runtime.impl.MessageExchangeImpl.afterSend(MessageExchangeImpl.java:257)
at
org.apache.servicemix.jbi.runtime.impl.DeliveryChannelImpl.send(DeliveryChannelImpl.java:176)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchangeInTx(AsyncBaseLifeCycle.java:492)
at
org.apache.servicemix.common.AsyncBaseLifeCycle$2.run(AsyncBaseLifeCycle.java:347)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown
Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
{code}
In the finally block of the process(HttpServletRequest request,
HttpServletResponse response) method
{code}
finally {
exchange.setStatus(ExchangeStatus.DONE);
channel.send(exchange);
}
{code}
And that causes messaging exception in the MessageExchangeImpl
{code}
void afterSend() throws MessagingException {
if (previousStatus == ExchangeStatus.DONE || previousStatus ==
ExchangeStatus.ERROR) {
throw new MessagingException("Can not send a terminated exchange");
}
}
{code}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.