首页 > 解决方案 > javax.net.ssl.SSLHandshakeException:java.security.cert.CertificateException:进行 SSL 连接时不存在主题备用名称

问题描述

请在下面的代码片段中找到我正在尝试使用HttpsURLConnection连接服务器以进行 REST 调用

在 HttpsURLConnection 的对象上执行输入流时出现错误。

我不知道如何连接 HTTPS 服务器。


  private String historyServerAddress
  private URL historyServerURL
  private String requestMethod
  private HttpsURLConnection httpURLConnection
  private String requestProperty

  Connection createConnection(String historyServerAddress) {

    System.setProperty("javax.net.ssl.trustStoreType","jks")
    System.setProperty("javax.net.ssl.trustStore","ssl_truststore")
    System.setProperty("javax.net.ssl.trustStorePassword","*****")
    this.historyServerURL = new URL(historyServerAddress)
    this.httpURLConnection = (HttpsURLConnection) this.historyServerURL.openConnection()
    SSLSocketFactory sslsocketfactory = (SSLSocketFactory) SSLSocketFactory
        .getDefault();
    SSLSocket sslsocket = (SSLSocket) sslsocketfactory.createSocket(
        "10.200.104.97", 19890)

    sslsocket.startHandshake()
    httpURLConnection.setSSLSocketFactory(sslsocketfactory)

  }

}```

标签: javasslgroovyssl-certificate

解决方案


推荐阅读