使用 java.net.Socket.connect()
时,拒绝连接和超时都会导致 ConnectException
。
java.net.ConnectException: Connection timed out: connect
java.net.ConnectException: Connection refused: connect
我怎样才能安全地区分这两者?当然,解析错误消息就可以完成工作。但是当消息在未来的 Java 版本中发生变化时,我就不走运了。
大局观:我正在编写一个使用 JAX-WS 和 Metro 实现的 Web 服务客户端。当一个web服务调用失败时,我想清楚的报告失败的原因,以便快速解决问题。
最佳答案
测量调用 connect() 和抛出异常之间耗时,并传递该信息。
关于java - 区分连接被拒绝和连接超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3363494/