FileUploadException caused by Socket read failed
Issue
In one of our environments, we are seeing the following errors in the server.log. Do you have any idea why this happens? Is there a timeout that needs to be adjusted?
2011-10-27 14:25:43,095 ERROR [org.apache.struts.upload.CommonsMultipartRequestHandler] (ajp-10.20.30.40-1001-8) Failed to parse multipart request
org.apache.commons.fileupload.FileUploadException
at org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase.java:369)
at org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase.java:302)
at org.apache.struts.upload.CommonsMultipartRequestHandler.handleRequest(CommonsMultipartRequestHandler.java:193)
at org.apache.struts.util.RequestUtils.populate(RequestUtils.java:442)
at org.apache.struts.action.RequestProcessor.processPopulate(RequestProcessor.java:816)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:203)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
.. .. ..
at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:436)
at org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:384)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:451)
at java.lang.Thread.run(Thread.java:619)
Caused by:
ClientAbortException: java.io.IOException: Socket read failed
at org.apache.catalina.connector.InputBuffer.realReadBytes(InputBuffer.java:342)
at org.apache.tomcat.util.buf.ByteChunk.substract(ByteChunk.java:420)
at org.apache.catalina.connector.InputBuffer.read(InputBuffer.java:364)
at org.apache.catalina.connector.CoyoteInputStream.read(CoyoteInputStream.java:193)
at org.apache.commons.fileupload.MultipartStream$ItemInputStream.makeAvailable(MultipartStream.java:959)
at org.apache.commons.fileupload.MultipartStream$ItemInputStream.read(MultipartStream.java:887)
at java.io.InputStream.read(InputStream.java:85)
at org.apache.commons.fileupload.util.Streams.copy(Streams.java:94)
.. .. ..
at org.apache.struts.upload.CommonsMultipartRequestHandler.handleRequest(CommonsMultipartRequestHandler.java:193)
at org.apache.struts.util.RequestUtils.populate(RequestUtils.java:442)
at org.apache.struts.action.RequestProcessor.processPopulate(RequestProcessor.java:816)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:203)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
.. .. ..
at java.lang.Thread.run(Thread.java:619)
Caused by: java.io.IOException: Socket read failed
at org.apache.coyote.ajp.AjpProcessor.read(AjpProcessor.java:1040)
at org.apache.coyote.ajp.AjpProcessor.readMessage(AjpProcessor.java:1115)
at org.apache.coyote.ajp.AjpProcessor.receive(AjpProcessor.java:1057)
at org.apache.coyote.ajp.AjpProcessor.refillReadBuffer(AjpProcessor.java:1095)
at org.apache.coyote.ajp.AjpProcessor.access$000(AjpProcessor.java:58)
at org.apache.coyote.ajp.AjpProcessor$SocketInputBuffer.doRead(AjpProcessor.java:1181)
at org.apache.coyote.Request.doRead(Request.java:428)
at org.apache.catalina.connector.InputBuffer.realReadBytes(InputBuffer.java:332)
... 67 more
Environment
- JBoss enterprise Application Platform (EAP)
- 5.1.0
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.