自 Java 8 Update 111 以来,我们的一些客户无法再运行我们的 Java Web Start 客户端。他们得到:
java.io.IOException:无法通过代理建立隧道。代理返回“HTTP/1.1 407 需要代理身份验证
看起来它与此 更改 有关:
现在,在为 HTTPS 设置隧道时需要基本身份验证的代理将不再默认成功。如果需要,可以通过从 jdk.http.auth.tunneling.disabledSchemes 网络属性中删除 Basic 或通过在命令行上将同名的系统属性设置为“”(空)来重新激活此身份验证方案。
如果客户不愿意改变他们的代理认证方式,有什么办法吗?
注意: 将 <property name="jdk.http.auth.tunneling.disabledSchemes" value=""/>
添加到JNLP的 <resources>
没有效果。这是因为这种方式只支持少数属性( 本页 底部附近有一个列表)。 “jdk.http.auth.tunneling.disabledSchemes”不在其中。
原文由 Marcus 发布,翻译遵循 CC BY-SA 4.0 许可协议
我发现有一种方法,但不在开发人员手中:用户可以添加
对于 Java 8,在 Java 控制面板 → Java → 查看… → 运行时参数
对于 Java 9,在 Java 控制面板 → 桌面设置 → 运行时参数