1

我在 Netty 中写了一些简单的代码

ChannelFuture future = bootstrap.connect(new InetSocketAddress(host, port));

我想java.net.ConnectException处理

错误 [主要] (SDKUpHandler.java:37)| 来自下游的意外异常。java.net.ConnectException:连接被拒绝:连接:localhost/127.0.0.1:12345

但我没有找到办法,对于 Netty 版本bind,并connect没有把它们扔掉。

javadoc, connect() 抛出两个异常但没有任何java.net.ConnectException东西。

抛出

ClassCastException - 如果“localAddress”选项的值既不是 SocketAddress 也不是 null

ChannelPipelineException - 如果此引导程序的 pipelineFactory 未能创建新的 ChannelPipeline

任何机构都可以提供一些解决方案吗?

4

1 回答 1

1

Netty 是异步的。您需要将 ChannelFutureListener 添加到 ChannelFuture ,一旦操作完成,它将收到通知。这样,您将收到“成功”或异常通知。检查包含所有这些的用户文档。

于 2013-10-22T04:24:49.600 回答