我正在使用netty编写SSL服务器,遵循安全聊天示例。
我有自动化测试
(即客户完成后关闭频道)
测试全部通过,我在管道中有另一个实现'exceptionCaught'的处理程序。 有时,当客户端关闭通道时,会在服务器上生成带有
的ExceptionCaught事件java.io.IOException: An established connection was aborted by the software in your host machine
at sun.nio.ch.SocketDispatcher.read0(Native Method)
at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:43)
at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:218)
at sun.nio.ch.IOUtil.read(IOUtil.java:186)
at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:359)
at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:66)
at org.jboss.netty.channel.socket.nio.AbstractNioWorker.processSelectedKeys(AbstractNioWorker.java:364)
at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:238)
at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:38)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
通过在SSLHandler的上方和下方添加一个简单的日志记录下游处理程序,我确定SSLHandler似乎在客户端关闭通道后生成下游写入事件,但我不确定这是否相关。 / p>
关于这里发生了什么的任何指示?