Java 7更新51上的HTTPSURLConnection失败

时间:2014-05-23 18:08:01

标签: java httpsurlconnection

我的Java应用程序通过Java Web start运行,我使用浏览器的会话ID从Web服务器下载文件。它在Java 7更新51之前工作正常但在Java 7更新51上失败。这是代码。 HTTP URL没有问题。问题只发生在HTTPSURL上。

当Java应用程序与HTTPS URL建立连接时,Web服务器不会将URL视为有效URL。

     URL webURL = new URL(m_url);
     conn = webURL.openConnection();
     conn.setRequestProperty("Cookie", cookie);

Cookie具有有效的会话ID。再次,这在Java 7更新之前可以正常工作51。

与HTTPS URL连接相关的Java 7更新51有什么变化吗?

似乎是Java Web start在发送实际的HTTPS请求之前发送空的HTTPS请求。这种情况再次发生在Java 7更新51之后。

1 个答案:

答案 0 :(得分:0)

空HTTPS请求的根本原因是在JNLP代码行之下。

**<jnlp codebase="https://20.107.21.23:443" spec="1.0+">**

以两种方式找到解决方案。

  1. 网络服务器代码的变化 当Web服务器收到空的HTTPS请求时,请不要为该请求设置cookie。

  2. 在JNLP文件中更改代码库属性值,如下所示

    **<jnlp codebase="https://*20.107.21.23:443" spec="1.0+">**
    

    **<jnlp codebase="https://20.107.21.23:443/*" spec="1.0+">**