【问题标题】:java.net.UnknownHostException: urljava.net.UnknownHostException:网址
【发布时间】:2012-07-31 09:52:18
【问题描述】:

我编写了一个 java 文件,它打开了一个到服务器的 HTTPS 连接,该服务器提供了从我们的 unix 服务器调用其 Web 服务的受限访问权限。 所以我们可以ping服务器IP,用端口443远程登录服务器IP,所以网络团队已经确认我们可以开始调用网络服务了。 现在我们已经在 Windows 服务器上尝试了一切,将他们提供的证书安装在本地文件夹中,然后简单地运行 jar。我们能够建立连接。 现在我们必须迁移到 unix 服务器。我们已将本地证书复制到 jar 中。 在运行 jar 时,我们得到以下异常。

    java.net.UnknownHostException: wugateway2pi.westernunion.net
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:195)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
    at java.net.Socket.connect(Socket.java:529)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:564)
    at com.sun.net.ssl.internal.ssl.BaseSSLSocketImpl.connect(BaseSSLSocketImpl.java:141)
    at sun.net.NetworkClient.doConnect(NetworkClient.java:163)
    at sun.net.www.http.HttpClient.openServer(HttpClient.java:388)
    at sun.net.www.http.HttpClient.openServer(HttpClient.java:523)
    at sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:272)        at                         
      sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:329)
    at 

       sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient
        (AbstractDelegateHttpsURLConnection.java:172)
    at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:911)
    at  sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect
         (AbstractDelegateHttpsURLConnection.java:158)
    at sun.net.www.protocol.http.HttpURLConnection.getOutputStream
          (HttpURLConnection.java:1014)
    at sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream
        (HttpsURLConnectionImpl.java:230)
    at utils.HelloWorld.heartbeat(HelloWorld.java:129)
    at utils.HelloWorld.main(HelloWorld.java:492)
     TRANSFAST: Some Error occurs during parsing the sendtrnx response
        java.lang.IllegalArgumentException: InputStream cannot be null
    at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:120)
    at utils.HelloWorld.heartbeat(HelloWorld.java:160)
    at utils.HelloWorld.main(HelloWorld.java:492)
      java.lang.RuntimeException: Exception in XML Parsing for the Response:
    at utils.HelloWorld.heartbeat(HelloWorld.java:184)
    at utils.HelloWorld.main(HelloWorld.java:492)
      Calling heartbeat  noCall

不知道缺少什么。

问候, 瑞奇

【问题讨论】:

  • 问题是UnknownHostException,因此可能是 DNS 问题。 dig wugateway2pi.westernunion.net 给了你什么?这也可能是 IPv4/v6 问题。机器上配置了什么?你用-Djava.net.preferIPv4Stack=true开关吗?

标签: java https telnet ftpes


【解决方案1】:

通过在我的主机文件中添加以下条目解决了该问题。 (在 Linux 和 Unix 下文件将在 /etc/hosts 下可用)

<ip address>       wugateway2pi.westernunion.net

这行得通。

【讨论】:

  • 这不是解决方案,它只是解决方法。您请求的域可能是集群的成员,负载均衡器会重定向您,在这种情况下,您会破坏它,因为您直接请求 IP 地址。您应该尝试 InstallCert.java。
猜你喜欢
  • 1970-01-01
  • 2018-12-30
  • 1970-01-01
  • 1970-01-01
  • 2018-08-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多