URLConnection.connect()在Eclipse中为HTTPS引发SSLKeyException

时间:2011-11-17 09:44:12

标签: java eclipse https urlconnection

我正在测试一个简单的方法,该方法适用于使用HTTP协议的图像,但仅适用于eclipse中的HTTPS图像。我在其他IDE中测试过,例如DrJava和jCreator,但它们在它们中运行良好。方法如下。

如果调用如下,则抛出异常

boolean verify = verifyImage("https://www.eff.org/files/HTTPS_Everywhere_new_logo.jpg");
System.out.println("Verify result is : " + verify);

例外情况如下。

javax.net.ssl.SSLKeyException: RSA premaster secret error
java.security.NoSuchAlgorithmException: SunTlsRsaPremasterSecret KeyGenerator not available

方法如下

public static boolean verifyImage(String src)
 {
  HttpURLConnection urlConnection = null;
  try {
   URL url = new URL(src);
   urlConnection = (HttpURLConnection) url.openConnection();
   urlConnection.setRequestMethod("HEAD");       
   urlConnection.connect();
   if (urlConnection.getResponseCode() == HttpURLConnection.HTTP_OK) {
     return true;

    } else {
     return false;
    }
  } catch (Exception e) {
   System.out.println("Exception");
   return false;
  }
 }    

我们非常感谢您解决此问题的任何帮助。

P.S:我尝试使用javax.net.ssl.HttpsURLConnection导致相同的异常。

1 个答案:

答案 0 :(得分:1)

这可能与SunTlsRsaPremasterSecret KeyGenerator not available的原因相同。

尝试从Eclipse中删除所有已安装的JRE并重新绑定它们。