ClientAbortException: java.net.SocketException: Connection reset by peer: socket write error
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/839314/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
ClientAbortException: java.net.SocketException: Connection reset by peer: socket write error
提问by
I am getting the following error frequently while retrieving file object from database column. How can I resolve this problem?
从数据库列检索文件对象时,我经常收到以下错误。我该如何解决这个问题?
May 8, 2009 3:18:14 PM org.apache.catalina.core.StandardHostValve status
WARNING: Exception Processing ErrorPage[errorCode=404, location=/error.jsp]
ClientAbortException: java.net.SocketException: Connection reset by peer: socket write error
at org.apache.catalina.connector.OutputBuffer.doFlush(OutputBuffer.java:327)
at org.apache.catalina.connector.OutputBuffer.flush(OutputBuffer.java:293)
at org.apache.catalina.connector.Response.flushBuffer(Response.java:537)
at org.apache.catalina.core.StandardHostValve.status(StandardHostValve.java:286)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:136)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Unknown Source)
Caused by: java.net.SocketException: Connection reset by peer: socket write error
at java.net.SocketOutputStream.socketWrite0(Native Method)
at java.net.SocketOutputStream.socketWrite(Unknown Source)
at java.net.SocketOutputStream.write(Unknown Source)
at org.apache.coyote.http11.InternalOutputBuffer.realWriteBytes(InternalOutputBuffer.java:746)
at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:433)
at org.apache.coyote.http11.InternalOutputBuffer.flush(InternalOutputBuffer.java:304)
at org.apache.coyote.http11.Http11Processor.action(Http11Processor.java:991)
at org.apache.coyote.Response.action(Response.java:182)
at org.apache.catalina.connector.OutputBuffer.doFlush(OutputBuffer.java:322)
... 13 more
回答by alamar
Your HTTP client disconnected.
您的 HTTP 客户端已断开连接。
This could have a couple of reasons:
这可能有几个原因:
- Responding to the request took too long, the client gave up
- You responded with something the client did not understand
- The end-user actually cancelled the request
- A network error occurred
- ... probably more
- 响应请求时间太长,客户端放弃
- 你回复了客户不理解的东西
- 最终用户实际上取消了请求
- 发生网络错误
- ...可能更多
You can fairly easily emulate the behavior:
你可以很容易地模拟这种行为:
URL url = new URL("http://example.com/path/to/the/file");
int numberOfBytesToRead = 200;
byte[] buffer = new byte[numberOfBytesToRead];
int numberOfBytesRead = url.openStream().read(buffer);
回答by Badal
Your log indicates ClientAbortException, which occurs when your HTTP client drops the connection with the server and this happened before server could close the server socket Connection.
您的日志指示 ClientAbortException,当您的 HTTP 客户端断开与服务器的连接时会发生这种情况,并且这发生在服务器可以关闭服务器套接字连接之前。
回答by Yura
Windows Firewall could cause this exception, try to disable it or add a rule for port or even program (java)
Windows 防火墙可能会导致此异常,请尝试禁用它或为端口甚至程序添加规则 (java)
回答by kfatih
I have got this error on open page from Google Cache.
我在Google Cache 的打开页面上遇到了这个错误。
I think, cached page(client) disconnectingon page loading.
我认为,缓存页面(客户端)在页面加载时断开连接。
You can ignorethis error log with try-catch on filter.
您可以使用 try-catch on filter忽略此错误日志。