5

我正在尝试编写一个程序以通过 HTTP 将 XML 请求发送到供应商服务器,并且我使用了此链接中的示例代码。

然后在运行代码时出现错误java.net.UnknownHostException然后我尝试 ping 供应商主机,然后www.google.com. 它们都不起作用。我有:

“ping 请求找不到主机 www.google.com”

我正在使用公司网络。我可以正常浏览、下载并使用他们的 Web 应用程序与供应商服务器通信。知道如何解决这个问题吗?

4

3 回答 3

3

您可以毫无问题地浏览网络,因为您的浏览器必须配置为使用代理。我们可以将 JVM 配置为使用相同的代理,然后成功打开 HTTP 连接。

打开您的网络浏览器的网络设置并记下您的代理服务器和端口。

对于 Firefox,请转到工具 > 选项 > 高级 > 网络 > 连接 > 设置

现在,在您的 Java 程序中,在您打开 HTTP 连接之前设置您的 JVM 以使用此代理。

System.getProperties().put("proxySet", "true");
System.getProperties().put("http.proxyHost", "10.1.0.11");
System.getProperties().put("http.proxyPort", "8080");

通过上述属性设置,您的程序应该能够打开连接。如果您的代理需要身份验证,那么您还必须Authenticator使用ProxyAuth对象设置默认值。

理想情况下,您应该在程序退出之前清除这些属性。

于 2013-05-28T20:17:55.340 回答
1

您应该检查系统的网络设置。您需要确认您已设置 DNS 服务器和默认网关。

如果总体上您的网络配置是正确的,您可以尝试使用该命令nslookup google.com 8.8.8.8。这将尝试使用其公共 dns 服务器之一解析 google 的 ip。

于 2013-05-28T19:39:39.203 回答
0

您很可能位于防火墙后面。

您的防火墙阻止您使用 Jsoup 等 Web 抓取工具连接到 Internet。如果您在公司网络中,请尝试连接到 Intranet 站点。

于 2018-02-01T01:13:35.817 回答