You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@servicemix.apache.org by "Bruce Snyder (JIRA)" <ji...@apache.org> on 2008/03/27 15:02:32 UTC

[jira] Created: (SM-1294) Null MessageExchange parameter passed to sendError() method after HttpConsumerEndpoint timeout

Null MessageExchange parameter passed to sendError() method after HttpConsumerEndpoint timeout
----------------------------------------------------------------------------------------------

                 Key: SM-1294
                 URL: https://issues.apache.org/activemq/browse/SM-1294
             Project: ServiceMix
          Issue Type: Bug
          Components: servicemix-http
    Affects Versions: 3.2.1
            Reporter: Bruce Snyder
            Assignee: Bruce Snyder


If a request to HttpConsumerEndpoint timesout, the container is returning an "Exchange Not Found" error:

{code}
2007-11-15 12:48:11,557 [main           ] INFO  ConsumerEndpointTimeoutTest    - <?xml version='1.0' encoding='UTF-8'?><error><![CDATA[java.lang.IllegalStateException: Exchange not found
	at org.apache.servicemix.http.endpoints.HttpConsumerEndpoint.process(HttpConsumerEndpoint.java:259)
	at org.apache.servicemix.http.HttpBridgeServlet.doPost(HttpBridgeServlet.java:71)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362)
	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)
	at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:211)
	at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
	at org.mortbay.jetty.Server.handle(Server.java:320)
	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506)
	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:375)
	at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396)
	at org.mortbay.jetty.nio.SelectChannelConnector$RetryContinuation.run(SelectChannelConnector.java:511)
	at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)
]]></error>
{code}

This looks to be caused due to the httpConsumerEndpoint populating the exchanges hashmap just before calling resume() on the continuation. When a timeout occurs, this logic is not executed so the exchanges hashmap is missing the exchange. 


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (SM-1294) Null MessageExchange parameter passed to sendError() method after HttpConsumerEndpoint timeout

Posted by "Bruce Snyder (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/activemq/browse/SM-1294?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bruce Snyder resolved SM-1294.
------------------------------

    Fix Version/s: 3.2.2
                   3.3
       Resolution: Fixed

Patch committed to 3.2 branch via [revision 656763|http://svn.apache.org/viewvc?rev=656763&view=rev]. 

Patch committed to trunk (3.3) via [revision 657170|http://svn.apache.org/viewvc?rev=657170&view=rev]. 

> Null MessageExchange parameter passed to sendError() method after HttpConsumerEndpoint timeout
> ----------------------------------------------------------------------------------------------
>
>                 Key: SM-1294
>                 URL: https://issues.apache.org/activemq/browse/SM-1294
>             Project: ServiceMix
>          Issue Type: Bug
>          Components: servicemix-http
>    Affects Versions: 3.2.1
>            Reporter: Bruce Snyder
>            Assignee: Bruce Snyder
>             Fix For: 3.2.2, 3.3
>
>         Attachments: SM-1294-diff.txt
>
>
> If a request to HttpConsumerEndpoint timesout, the container is returning an "Exchange Not Found" error:
> {code}
> 2007-11-15 12:48:11,557 [main           ] INFO  ConsumerEndpointTimeoutTest    - <?xml version='1.0' encoding='UTF-8'?><error><![CDATA[java.lang.IllegalStateException: Exchange not found
> 	at org.apache.servicemix.http.endpoints.HttpConsumerEndpoint.process(HttpConsumerEndpoint.java:259)
> 	at org.apache.servicemix.http.HttpBridgeServlet.doPost(HttpBridgeServlet.java:71)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
> 	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
> 	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362)
> 	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)
> 	at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:211)
> 	at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
> 	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
> 	at org.mortbay.jetty.Server.handle(Server.java:320)
> 	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506)
> 	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:375)
> 	at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396)
> 	at org.mortbay.jetty.nio.SelectChannelConnector$RetryContinuation.run(SelectChannelConnector.java:511)
> 	at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)
> ]]></error>
> {code}
> This looks to be caused due to the httpConsumerEndpoint populating the exchanges hashmap just before calling resume() on the continuation. When a timeout occurs, this logic is not executed so the exchanges hashmap is missing the exchange. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (SM-1294) Null MessageExchange parameter passed to sendError() method after HttpConsumerEndpoint timeout

Posted by "Guillaume Nodet (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/activemq/browse/SM-1294?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Guillaume Nodet updated SM-1294:
--------------------------------

    Fix Version/s: servicemix-http-2008.01

> Null MessageExchange parameter passed to sendError() method after HttpConsumerEndpoint timeout
> ----------------------------------------------------------------------------------------------
>
>                 Key: SM-1294
>                 URL: https://issues.apache.org/activemq/browse/SM-1294
>             Project: ServiceMix
>          Issue Type: Bug
>          Components: servicemix-http
>    Affects Versions: 3.2.1
>            Reporter: Bruce Snyder
>            Assignee: Bruce Snyder
>             Fix For: 3.2.2, 3.3, servicemix-http-2008.01
>
>         Attachments: SM-1294-diff.txt
>
>
> If a request to HttpConsumerEndpoint timesout, the container is returning an "Exchange Not Found" error:
> {code}
> 2007-11-15 12:48:11,557 [main           ] INFO  ConsumerEndpointTimeoutTest    - <?xml version='1.0' encoding='UTF-8'?><error><![CDATA[java.lang.IllegalStateException: Exchange not found
> 	at org.apache.servicemix.http.endpoints.HttpConsumerEndpoint.process(HttpConsumerEndpoint.java:259)
> 	at org.apache.servicemix.http.HttpBridgeServlet.doPost(HttpBridgeServlet.java:71)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
> 	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
> 	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362)
> 	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)
> 	at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:211)
> 	at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
> 	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
> 	at org.mortbay.jetty.Server.handle(Server.java:320)
> 	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506)
> 	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:375)
> 	at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396)
> 	at org.mortbay.jetty.nio.SelectChannelConnector$RetryContinuation.run(SelectChannelConnector.java:511)
> 	at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)
> ]]></error>
> {code}
> This looks to be caused due to the httpConsumerEndpoint populating the exchanges hashmap just before calling resume() on the continuation. When a timeout occurs, this logic is not executed so the exchanges hashmap is missing the exchange. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (SM-1294) Null MessageExchange parameter passed to sendError() method after HttpConsumerEndpoint timeout

Posted by "Bruce Snyder (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/activemq/browse/SM-1294?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bruce Snyder updated SM-1294:
-----------------------------

    Attachment: SM-1294-diff.txt

> Null MessageExchange parameter passed to sendError() method after HttpConsumerEndpoint timeout
> ----------------------------------------------------------------------------------------------
>
>                 Key: SM-1294
>                 URL: https://issues.apache.org/activemq/browse/SM-1294
>             Project: ServiceMix
>          Issue Type: Bug
>          Components: servicemix-http
>    Affects Versions: 3.2.1
>            Reporter: Bruce Snyder
>            Assignee: Bruce Snyder
>         Attachments: SM-1294-diff.txt
>
>
> If a request to HttpConsumerEndpoint timesout, the container is returning an "Exchange Not Found" error:
> {code}
> 2007-11-15 12:48:11,557 [main           ] INFO  ConsumerEndpointTimeoutTest    - <?xml version='1.0' encoding='UTF-8'?><error><![CDATA[java.lang.IllegalStateException: Exchange not found
> 	at org.apache.servicemix.http.endpoints.HttpConsumerEndpoint.process(HttpConsumerEndpoint.java:259)
> 	at org.apache.servicemix.http.HttpBridgeServlet.doPost(HttpBridgeServlet.java:71)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
> 	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
> 	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362)
> 	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)
> 	at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:211)
> 	at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
> 	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
> 	at org.mortbay.jetty.Server.handle(Server.java:320)
> 	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506)
> 	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:375)
> 	at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396)
> 	at org.mortbay.jetty.nio.SelectChannelConnector$RetryContinuation.run(SelectChannelConnector.java:511)
> 	at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)
> ]]></error>
> {code}
> This looks to be caused due to the httpConsumerEndpoint populating the exchanges hashmap just before calling resume() on the continuation. When a timeout occurs, this logic is not executed so the exchanges hashmap is missing the exchange. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.