我用一个'java'程序来获取使用地理编码的给定邮政编码的坐标(纬度和经度)。 我在家里测试了这个程序它工作正常,但是当我在办公室运行相同的程序时,它会抛出“网络错误”。堆栈跟踪如下所示。
[2012-10-04 10:50:34.337 MESZ] [主要]错误 com.google.code.geocoder.Geocoder - 拒绝连接:连接 java.net.ConnectException:拒绝连接:connect at java.net.DualStackPlainSocketImpl.connect0(本机方法) 〜[na:1.7.0_03] at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:69) 〜[na:1.7.0_03] at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339) 〜[na:1.7.0_03] at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200) 〜[na:1.7.0_03] at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182) 〜[na:1.7.0_03] at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:157) 〜[na:1.7.0_03] at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:391) 〜[na:1.7.0_03] java.net.Socket.connect(Socket.java:579) 〜[na:1.7.0_03] java.net.Socket.connect(Socket.java:528) 〜[na:1.7.0_03] at sun.net.NetworkClient.doConnect(NetworkClient.java:180)~ [na:1.7.0_03] 在sun.net.www.http.HttpClient.openServer(HttpClient.java:388) 〜[na:1.7.0_03] at sun.net.www.http.HttpClient.openServer(HttpClient.java:483) 〜[na:1.7.0_03] at sun.net.www.http.HttpClient。(HttpClient.java:213)〜[na:1.7.0_03] 在sun.net.www.http.HttpClient.New(HttpClient.java:300) 〜[na:1.7.0_03] at sun.net.www.http.HttpClient.New(HttpClient.java:316)〜[na:1.7.0_03] 在 sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:992) 〜[na:1.7.0_03] at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:928) 〜[na:1.7.0_03] at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:846) 〜[na:1.7.0_03] at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1296) java.net.URL.openStream上的〜[na:1.7.0_03](URL.java:1035) 〜[na:1.7.0_03] at com.google.code.geocoder.Geocoder.request(Geocoder.java:72) 〜[geocoder-java-0.9.jar:na] at com.google.code.geocoder.Geocoder.geocode(Geocoder.java:63) 〜[geocoder-java-0.9.jar:na] at de.dmc.intersport.enfinity.ch.b2c.app.capi.GoogleGeoLocation.getGeoResults(GoogleGeoLocation.java:36) [lib /:na] at de.dmc.intersport.enfinity.ch.b2c.app.capi.GoogleGeoLocation。(GoogleGeoLocation.java:21) [lib /:na] at de.dmc.intersport.enfinity.ch.b2c.app.capi.GoogleGeoLocation.main(GoogleGeoLocation.java:67) [LIB /:NA]
我认为这是“防火墙设置”的问题。我能做些什么来摆脱这个。 任何帮助都将受到极大关注
答案 0 :(得分:0)
由于防火墙限制,您可能无法从办公室计算机连接 Google Geo Coding API 。这就是您在家中成功运行的同一程序中遇到 “网络错误” 的原因。尝试在没有防火墙限制的其他计算机上运行相同的应用程序/程序。
您可以从公司的网络管理员处获取帮助 绕过 计算机的 IP 中的防火墙限制。
答案 1 :(得分:0)
我找到了上述问题的解决方案,必须在你的java代码中设置如下所示的代理设置
System.getProperties()。put(“http.proxyHost”,“proxyname”); System.getProperties()。put(“http.proxyPort”,“portnumber”);
那么事情应该没问题