0

私はServerSocketChannelが開かれ、クライアントポートがバインドされるNIOスレッドを使用しています.しかし、ソケットチャネルからデータを読み込もうとすると、以下の例外が表示されました.誰かが解決策を提供してくれると助かります.

Connection reset by peer java.net.SocketException: Transport endpoint is not connected
    at sun.nio.ch.SocketChannelImpl.shutdown(Native Method)
    at sun.nio.ch.SocketChannelImpl.shutdownOutput(SocketChannelImpl.java:669)
    at sun.nio.ch.SocketAdaptor.shutdownOutput(SocketAdaptor.java:386)
    at iyp.trncomms.ConnRecordWriter.checkShutDown(ConnRecordWriter.java:131)
    at iyp.trncomms.ConnRecordWriter.continueWriting(ConnRecordWriter.java:214)
    at iyp.trncomms.ConnRecordWriter.retry(ConnRecordWriter.java:101)
    at iyp.trncomms.ConnRecordWriter.shutDown(ConnRecordWriter.java:92)
    at iyp.trncomms.ConnRecord$WorkingState.toOnHoldState(ConnRecord.java:1224)
    at iyp.trncomms.ConnRecord$WorkingState.onInputError(ConnRecord.java:1152)
    at iyp.trncomms.ConnRecord.read(ConnRecord.java:124)
    at iyp.trncomms.NIO.run(NIO.java:137)
4

2 に答える 2

0

shutdownOutput()エラーケースで呼び出しているようです。それはうまくいきません。すでにエラーが発生しています。これにより、別のエラーが発生します。チャンネルを閉じるだけです。

于 2012-06-05T01:40:44.513 に答える
0

Connection reset by peerかなり明示的です。接続を開きましたが、コードが実行される前にリモート側が接続を閉じました。リモート システムのログを調べて、接続が途中で閉じられた理由を確認する必要があります。

于 2012-06-04T20:10:06.257 に答える