0

我正在使用 Netty 3.6.x 开发基于套接字的应用程序。但是我遇到了 channel.write 的问题。这就是我所做的:首先,每当通道进入 CONNECTED 状态时,我都会写入通道并且它是成功的。现在,当服务器完成时,我尝试重新连接它,当通道连接时,我尝试写入它,但这次似乎服务器没有收到数据。

此外,当我检查写入状态时,它说完成。

可能是什么问题?

4

2 回答 2

2

您应该检查 ChannelFuture 是否失败,如果失败,请通过以下方式检查错误:

ChannelFuture future = ...
if (!future.isSuccess()) {
    future.getCause().printStacktrace();
} 

这应该会告诉你失败的原因。

于 2013-07-06T18:58:54.333 回答
0

谢谢诺曼。我已经解决了这个问题。问题是我正在使用 ChannelFuture 侦听器,我意识到我正在该回调中设置管道和转码器。因此,当我通过网络发送数据时,它没有正确编码。为了解决这个问题,我必须处理 channelConnected 和 channelCLosed 方法中的每一个。

于 2013-07-08T09:05:29.383 回答