【问题标题】:Proxy connection issue in JDK5..UnsupportedOperationExceptionJDK5..UnsupportedOperationException 中的代理连接问题
【发布时间】:2015-08-05 20:52:49
【问题描述】:

我正在尝试通过代理从 Java (JDK5) 服务器连接到外部服务器。

https://docs.oracle.com/javase/7/docs/technotes/guides/net/proxies.html(第三部分)。

java.net.Proxy proxy = new java.net.Proxy(java.net.Proxy.Type.HTTP, new java.net.InetSocketAddress("WHQPROXYPOOL", 80));
java.net.HttpURLConnection con = (java.net.HttpURLConnection) new java.net.URL("https://performancemanager8.successfactors.com/odata/v2/FOPayGroup?$format=json").openConnection(proxy);

但我收到错误消息“UnsupportedOperationException,未实现方法”。 当我检查 Java 类 (JDK5) URLStreamHandler

protected URLConnection openConnection(URL u, Proxy p) throws IOException {
throw new UnsupportedOperationException("Method not implemented.");
}

如何通过代理连接到目标服务器?

【问题讨论】:

  • 你的 JDK 是什么版本?我可以使用最新版本的 JDK 5 update 22 很好地连接到上述服务器。
  • 我的服务器,程序运行的地方,在 JDK 5 上,更新 22。 URLStreamHandler 是抽象类。实现类在哪里,JDK如何识别它?
  • 第二个是哪一行抛出异常?
  • 是的。第二行。 .openConnection(proxy)会调用类URL的openConnection(Proxy proxy),会调用抽象类URLStreamHandler的openConnection(URL u, Proxy p)。
  • 你能发布完整的堆栈跟踪吗?

标签: java


【解决方案1】:

试试这个@RaghuVamseedhar:

java.net.Proxy proxy = new java.net.Proxy(java.net.Proxy.Type.HTTP, new java.net.InetSocketAddress("WHQPROXYPOOL", 80));
java.net.HttpURLConnection con = (java.net.HttpURLConnection) new java.net.URL(null, "https://performancemanager8.successfactors.com/odata/v2/FOPayGroup?$format=json", new sun.net.www.protocol.http.Handler()).openConnection(proxy);

我得到了这段代码来获取默认的 sun HTTP Handler here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-17
    • 1970-01-01
    • 2020-02-27
    • 2018-08-02
    • 2017-03-13
    相关资源
    最近更新 更多