24

データベース列からファイル オブジェクトを取得しているときに、次のエラーが頻繁に発生します。この問題を解決するにはどうすればよいですか?

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
4

4 に答える 4

39

HTTP クライアントが切断されました。

これにはいくつかの理由が考えられます。

  • リクエストへの対応に時間がかかりすぎたため、クライアントは断念しました
  • クライアントが理解できないことを返信した
  • エンドユーザーが実際にリクエストをキャンセルした
  • ネットワーク エラーが発生しました
  • ...おそらくもっと

この動作はかなり簡単にエミュレートできます。

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);
于 2009-05-08T11:08:22.600 に答える
10

ログは ClientAbortException を示しています。これは、HTTP クライアントがサーバーとの接続を切断し、サーバーがサーバー ソケット接続を閉じる前に発生した場合に発生します。

于 2013-06-12T07:09:45.730 に答える
2

Google Cacheから開いているページでこのエラーが発生しました。

ページの読み込み時にキャッシュされたページ(クライアント)が切断されると思います。

このエラー ログは、フィルタの try-catch を使用して無視できます。

于 2015-05-12T22:40:52.500 に答える
-2

Windows ファイアウォールがこの例外を引き起こす可能性があります。無効にするか、ポートまたはプログラム (java) のルールを追加してください。

于 2014-11-14T13:08:08.857 に答える