当Java EE服务器尝试解析其中一个服务的主机名时,我们发现以下异常。我们可以通过ping/nslookup命令手动解析该主机名。我们还能够使用curl和服务器尝试使用的相同参数来启动该外部服务。所以,只有当我们尝试从Java/Java EE应用程序向外部主机发出请求时,才会出现此问题。来自Java的UnknownHostException,但主机使用Ping解析/ nslookup/curl
要解决此问题,我们在/ etc/hosts文件中手动添加了一个条目,它解决了问题,但我们需要一个永久性解决方案,因此我们不必更改IP。它之前一直在工作,但没有添加入口,但突然间它停止工作。
详细我们的环境:
OS:美分OS 6.3
的Java:JDK 1.6.0_24
Java EE服务器:JBoss AS中7.1.1
HTTP客户端库:HttpClient的-4.0.jar
在此先感谢您的帮助!
错误,同时检查销售人员许可证|: 的java.net.UnknownHostException:na15.salesforce.com在 java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:175) [rt.jar中:1.6.0_24 ] at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384) [rt.jar:1.6.0_24] at java.net.Socket.connect(Socket.java:546) [rt.jar:1.6。 0_24] sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:584) [jsse.jar:1.6.0_24] at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java: 333)org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:123) [httpclient-4.0.jar:4.0] org.apache.http中的[httpclient-4.0.jar:4.0]。 impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:147) [httpclient-4.0.jar:4.0] at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:101) [httpclient- org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:381) [httpclient-4.0.jar:4.0] org.apache.http.impl.client。 AbstractHttpClient.execute(AbstractHttpClient.java:641) [httpclient-4.0.jar:4.0] at org.ap ache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:576) [HttpClient的-4.0.jar:4.0]
谢谢您的回答!我们认为它应该是一个问题,Java如何尝试解析DNS名称与操作系统是如何实现的。你的指针肯定会有帮助。 –
我们发现了这个问题。问题在于DNS服务器配置的更改。谢谢你的帮助!! –