HttpRouter fire java.lang.IllegalArgumentException if the Status Code is 304 (Not
Modified)
-------------------------------------------------------------------------------------------
Key: JBESB-2821
URL:
https://jira.jboss.org/jira/browse/JBESB-2821
Project: JBoss ESB
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Adapters, Rosetta
Affects Versions: 4.6
Reporter: Magesh Kumar B
Assignee: Magesh Kumar B
Fix For: 4.7
When a GET is requested with If-Modified-Since in the header, the server responds with 304
- Not Modified with no Response Body[1] if the document requested is not modified since.
We get the following error in such situations.
WARN [org.jboss.soa.esb.actions.routing.http.HttpRouter] Received status code
'304' on HTTP org.apache.commons.httpclient.methods.GetMethod@5583aa request to
'http://server/url'.
ERROR [org.jboss.soa.esb.listeners.gateway.JBossRemotingGatewayListener] JBoss Remoting
Gateway failed to synchronously deliver message to target service [Service:Category].
org.jboss.soa.esb.couriers.FaultMessageException: java.lang.IllegalArgumentException: null
'stream' arg passed in method call.
at
org.jboss.soa.esb.listeners.message.errors.Factory.createExceptionFromFault(Factory.java:50)
at
org.jboss.internal.soa.esb.couriers.TwoWayCourierImpl.pickup(TwoWayCourierImpl.java:207)
at
org.jboss.soa.esb.client.ServiceInvoker$EPRInvoker.attemptDelivery(ServiceInvoker.java:580)
at org.jboss.soa.esb.client.ServiceInvoker$EPRInvoker.access$200(ServiceInvoker.java:493)
at org.jboss.soa.esb.client.ServiceInvoker.post(ServiceInvoker.java:343)
at org.jboss.soa.esb.client.ServiceInvoker.deliverSync(ServiceInvoker.java:204)
at
org.jboss.soa.esb.listeners.message.UncomposedMessageDeliveryAdapter.deliverSyncWithoutDecomposing(UncomposedMessageDeliveryAdapter.java:107)
at
org.jboss.soa.esb.listeners.message.UncomposedMessageDeliveryAdapter.deliverSync(UncomposedMessageDeliveryAdapter.java:86)
at
org.jboss.soa.esb.listeners.gateway.JBossRemotingGatewayListener.invoke(JBossRemotingGatewayListener.java:345)
at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:866)
at org.jboss.remoting.transport.coyote.CoyoteInvoker.service(CoyoteInvoker.java:310)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.IllegalArgumentException: null 'stream' arg passed in method
call.
at org.jboss.internal.soa.esb.util.StreamUtils.readStream(StreamUtils.java:47)
at org.jboss.soa.esb.actions.routing.http.HttpRouter.process(HttpRouter.java:109)
at
org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.processPipeline(ActionProcessingPipeline.java:615)
at
org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.processPipeline(ActionProcessingPipeline.java:574)
at
org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.process(ActionProcessingPipeline.java:408)
at
org.jboss.soa.esb.listeners.message.MessageAwareListener$TransactionalRunner.run(MessageAwareListener.java:540)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
... 1 more
[1]
http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
"10.3.5 304 Not Modified
If the client has performed a conditional GET request and access is allowed, but the
document has not been modified, the server SHOULD respond with this status code. The 304
response MUST NOT contain a message-body, and thus is always terminated by the first empty
line after the header fields. "
Note: This happens only after applying this fix, else it is never caught or identified
https://jira.jboss.org/jira/browse/JBESB-2525
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira