使用Netty时如何处理连接或绑定异常

时间:2013-10-22 03:48:08

标签: java network-programming netty

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

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

我想处理java.net.ConnectException

  

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

但是我找不到办法,因为Netty版本bindconnect并没有把它们抛弃。

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

  

抛出

     

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

     

ChannelPipelineException - 如果此bootstrap的pipelineFactory无法创建新的ChannelPipeline

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

1 个答案:

答案 0 :(得分:1)

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