jdk1.8 java.security.cert.CertificateException: No name matching www.baidu.com found
时间: 2024-04-02 18:31:18 浏览: 95
java.security.cert.CertificateException: No subject alternative DNS name matching XXX found解决方案
这个异常通常是由于 JDK 1.8 中的 SSL/TLS 协议版本与您所连接的服务器不兼容引起的。在 JDK 1.8 中,默认情况下,SSL/TLS 协议版本为 TLSv1,而一些服务器可能只支持更高版本的协议(如 TLSv1.2)。您可以尝试以下方法来解决这个问题:
1. 尝试升级您的 JDK 版本到最新版本,这可以通过解决旧版本中的一些 SSL/TLS 协议问题来解决该问题。
2. 尝试手动设置 SSLContext 的协议版本,以确保与服务器兼容。例如,您可以使用以下代码设置为 TLSv1.2:
SSLContext sslContext = SSLContext.getInstance("TLSv1.2");
sslContext.init(null, null, null);
HttpsURLConnection.setDefaultSSLSocketFactory(sslContext.getSocketFactory());
请注意,这将更改整个应用程序中的 SSL/TLS 协议版本。
3. 如果您无法手动更改 SSL/TLS 协议版本,则可能需要与服务器管理员联系,以确定服务器是否支持 JDK 1.8 默认的 SSL/TLS 协议版本,并尝试与服务器管理员一起解决该问题。
希望以上方法能够帮助您解决这个问题。
阅读全文