【发布时间】:2012-07-06 08:12:20
【问题描述】:
我在我的 java 源代码中配置了一个代理:
systemSettings.put("http.proxyHost", "www.proxyserver.com");
systemSettings.put("http.proxyPort", "8080");
systemSettings.put("http.nonProxyHosts", "10.x.y.z");
这里 10.x.y.z 是我的 weblogic 服务器的实际 IP。 但是每当代码尝试连接到 weblogic 服务器时,我都会收到以下错误:
原因:java.net.ConnectException: t3://10.x.y.z:7001: Destination 无法到达;嵌套异常是:java.net.ProtocolException: 来自代理的无法识别的响应:'HTTP/1.0 403 Forbidden';不 到目的地的可用路由器 weblogic.rjvm.RJVMFinder.findOrCreateInternal(RJVMFinder.java:216) 在 weblogic.rjvm.RJVMFinder.findOrCreate(RJVMFinder.java:170) 在 weblogic.rjvm.ServerURL.findOrCreateRJVM(ServerURL.java:153) 在 weblogic.jndi.WLInitialContextFactoryDelegate$1.run(WLInitialContextFactoryDelegate.java:345) 在 weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363) 在 weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146) 在 weblogic.jndi.WLInitialContextFactoryDelegate.getInitialContext(WLInitialContextFactoryDelegate.java:340)
似乎设置 http.nonProxyHosts 没有按预期工作。我试图通过 Internet 找到解决方案,但大多数都说删除代理设置。我无法删除代理,因为我的代码尝试连接到某些 Internet URL。另请注意,weblogic 服务器位于远程计算机上。 你能不能给我一个提示,这里一定是什么问题?
【问题讨论】:
-
您是否也在系统级别设置了代理设置?
-
我也试过 System.setProperty("http.proxyHost", "www.proxyserver.com"); System.setProperty("http.proxyPort", "8080"); System.setProperty("http.nonProxyHosts", "10.x.y.z");但仍然没有运气。
-
我要求这样做是因为在各种不同的尝试之后,我遇到了“跟踪”多个代理设置的问题。有时很难知道哪个参数优先。您使用哪个 HTTP 库来连接您的 weblogic?
-
您好 Arcadien,我正在使用 sun.net.www.protocol.http.Handler()。
-
System.setProperty("http.nonProxyHosts", "10.x.y.z") 似乎没有按预期工作。无法为这种奇怪的行为找到任何原因。