【发布时间】:2014-12-15 21:28:53
【问题描述】:
我正在使用 Netty 4.0 构建客户端/服务器。 服务器在 localhost:8083 上正确侦听,我可以远程登录它,它会正确触发服务器断点。 但是当我尝试连接那段代码时:
_bootstrap = new Bootstrap();
_bootstrap.group(locGroup)
.channel(NioServerSocketChannel.class)
.handler(new ClientInit(this, _sslContext, _logger));
_bootstrap.remoteAddress("127.0.0.1", 8083);
ChannelFuture locChannelFuture = _bootstrap.connect();
_channel = locChannelFuture.sync().channel();
它在 sync() 处引发异常:java.nio.channels.ClosedChannelException。 如前所述,当我 telnet 127.0.0.1 8083(或使用 Socket 在代码中连接)时,它确实有效。 任何想法 ?谢谢。
【问题讨论】:
-
您能否在管道两端(服务器和客户端)显示更多详细信息,以便查看有哪些类型的处理程序?例如,我看到 _sslContext,我想它是管理 ssl 部分,这可能是连接被拒绝的原因,然后是 ClosedChannelException。堆栈跟踪也很有用。
-
管道确实是关键。我在回答中解释了这一点。谢谢。