"java.net.SocketException: Connection reset" sometimes on Tomcat localhost log [duplicate]
This seems a famous issue. But I could not find a brief answer from Google. I have many clients connect to a Tomcat server through a Apache proxy server. Sometimes, I see this error on localhost log of tomcat. I want to know what are possible reasons. At which point, the connection was "reset"? I have a limited access to the enviroment, so I couldn't use tools to check the connections.
java.net.SocketException: Connection reset
at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:96)
at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
at org.apache.coyote.http11.InternalOutputBuffer.realWriteBytes(InternalOutputBuffer.java:740)
at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:434)
at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:349)
at org.apache.coyote.http11.InternalOutputBuffer$OutputStreamOutputBuffer.doWrite(InternalOutputBuffer.java:764)
at org.apache.coyote.http11.filters.ChunkedOutputFilter.doWrite(ChunkedOutputFilter.java:126)
at org.apache.coyote.http11.InternalOutputBuffer.doWrite(InternalOutputBuffer.java:573)
at org.apache.coyote.Response.doWrite(Response.java:560)
at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:353)
at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:434)
at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:293)
at org.apache.catalina.connector.OutputBuffer.writeByte(OutputBuffer.java:399)
at org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:77)
at com.caucho.hessian.io.HessianOutput.printString(HessianOutput.java:898)
at com.caucho.hessian.io.HessianOutput.writeString(HessianOutput.java:583)
at com.caucho.hessian.io.JavaSerializer$StringFieldSerializer.serialize(JavaSerializer.java:412)
at com.caucho.hessian.io.JavaSerializer.writeObject10(JavaSerializer.java:241)
at com.caucho.hessian.io.JavaSerializer.writeObject(JavaSerializer.java:221)
at com.caucho.hessian.io.HessianOutput.writeObject(HessianOutput.java:317)
at com.caucho.hessian.io.ArraySerializer.writeObject(ArraySerializer.java:69)
at com.caucho.hessian.io.HessianOutput.writeObject(HessianOutput.java:317)
at com.caucho.hessian.io.JavaSerializer$FieldSerializer.serialize(JavaSerializer.java:315)
at com.caucho.hessian.io.JavaSerializer.writeObject10(JavaSerializer.java:241)
at com.caucho.hessian.io.JavaSerializer.writeObject(JavaSerializer.java:221)
at com.caucho.hessian.io.ThrowableSerializer.writeObject(ThrowableSerializer.java:69)
at com.caucho.hessian.io.HessianOutput.writeObject(HessianOutput.java:317)
at com.caucho.hessian.io.HessianOutput.writeFault(HessianOutput.java:297)
at com.caucho.hessian.server.HessianSkeleton.invoke(HessianSkeleton.java:190)
at com.caucho.hessian.server.HessianSkeleton.invoke(HessianSkeleton.java:109)
at org.springframework.remoting.caucho.Hessian2SkeletonInvoker.invoke(Hessian2SkeletonInvoker.java:94)
at org.springframework.remoting.caucho.HessianExporter.invoke(HessianExporter.java:142)
at org.springframework.remoting.caucho.HessianServiceExporter.handleRequest(HessianServiceExporter.java:70)
at 开发者_JAVA百科org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter.handle(HttpRequestHandlerAdapter.java:49)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:875)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:807)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:511)
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.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
Thanks
It just means that you are writing to a connection that has already been closed by the other end. Browsers do this all the time: the user navigated away from the page before it loaded completely. Don't worry about it.
精彩评论