【问题标题】:Azure notification hub java.net.ConnectException: Connection timed out: no further information [duplicate]Azure 通知中心 java.net.ConnectException:连接超时:没有更多信息 [重复]
【发布时间】:2017-12-31 17:12:49
【问题描述】:

我正在尝试通过 Java 使用 Azure 通知中心。尝试创建注册时,我得到一个 java.net.ConnectException: Connection timed out: no further information。有人可以帮我理解为什么会出现这个问题吗?如果您需要更多信息,请告诉我。谢谢。

我正在使用从https://github.com/Azure/azure-notificationhubs-java-backend/blob/master/NotificationHubs 找到的代码。

jar 文件版本如下:

httpclient - 4.3.1
httpcore - 4.3.1
httpcore-nio - 4.3.1

在 SyncCallback 类中发生错误,方法 - “失败”。异常跟踪如下。

java.lang.RuntimeException: java.net.ConnectException: Connection timed out: no further information
    at com.org.utils.notifications.SyncCallback.failed(SyncCallback.java:41)
    at org.apache.http.concurrent.BasicFuture.failed(BasicFuture.java:130)
    at org.apache.http.impl.nio.client.DefaultClientExchangeHandlerImpl.connectionRequestFailed(DefaultClientExchangeHandlerImpl.java:318)
    at org.apache.http.impl.nio.client.DefaultClientExchangeHandlerImpl.access$100(DefaultClientExchangeHandlerImpl.java:63)
    at org.apache.http.impl.nio.client.DefaultClientExchangeHandlerImpl$1.failed(DefaultClientExchangeHandlerImpl.java:364)
    at org.apache.http.concurrent.BasicFuture.failed(BasicFuture.java:130)
    at org.apache.http.impl.nio.conn.PoolingNHttpClientConnectionManager$InternalPoolEntryCallback.failed(PoolingNHttpClientConnectionManager.java:474)
    at org.apache.http.concurrent.BasicFuture.failed(BasicFuture.java:130)
    at org.apache.http.nio.pool.RouteSpecificPool.failed(RouteSpecificPool.java:165)
    at org.apache.http.nio.pool.AbstractNIOConnPool.requestFailed(AbstractNIOConnPool.java:530)
    at org.apache.http.nio.pool.AbstractNIOConnPool$InternalSessionRequestCallback.failed(AbstractNIOConnPool.java:778)
    at org.apache.http.impl.nio.reactor.SessionRequestImpl.failed(SessionRequestImpl.java:154)
    at org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor.processEvent(DefaultConnectingIOReactor.java:175)
    at org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor.processEvents(DefaultConnectingIOReactor.java:147)
    at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor.execute(AbstractMultiworkerIOReactor.java:349)
    at org.apache.http.impl.nio.conn.PoolingNHttpClientConnectionManager.execute(PoolingNHttpClientConnectionManager.java:189)
    at org.apache.http.impl.nio.client.CloseableHttpAsyncClientBase.doExecute(CloseableHttpAsyncClientBase.java:67)
    at org.apache.http.impl.nio.client.CloseableHttpAsyncClientBase.access$000(CloseableHttpAsyncClientBase.java:38)
    at org.apache.http.impl.nio.client.CloseableHttpAsyncClientBase$1.run(CloseableHttpAsyncClientBase.java:57)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.net.ConnectException: Connection timed out: no further information
    at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
    at sun.nio.ch.SocketChannelImpl.finishConnect(Unknown Source)
    at org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor.processEvent(DefaultConnectingIOReactor.java:173)
    ... 7 more

【问题讨论】:

  • 您能否检查调试器尝试连接的位置,并确保您可以通过命令行或任何其他方式进行调用?可能是关闭的端口或防火墙阻止了调用。

标签: java nio azure-notificationhub connectexception


【解决方案1】:

你可以找到这个java.net.ConnectException: Connection timed out Exception 的一些原因。

  1. 您在项目中使用的系统端口的防火墙响了。 检查您的 filewale 设置并取消阻止端口。

  2. IP/域或端口不正确。 尝试pingtelnet 命令检查连接。

  3. 可能是因为网速慢或者进程服务器没有及时处理请求,或者可能是连接问题。

【讨论】:

  • @nikita-g/Mayank - 正如我所提到的,它正在尝试连接到 Azure 通知中心以创建设备注册。我通过邮递员检查了网址,它工作正常。我正在尝试在 Eclipse + Tomcat 服务器组合上运行代码。
  • @csharpnewbie 你的网络环境中有代理服务器吗? Chrome/Postman 将使用本地默认代理服务器设置来连接网络,但 Java 不会,除非通过方法 System.setProperty 来设置。
猜你喜欢
  • 2022-01-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-06-25
  • 2011-08-05
  • 2014-04-18
  • 2012-09-29
  • 1970-01-01
相关资源
最近更新 更多