小编典典
原因是 java.lang.Throwable: SSL handshake failed
TrustManager trm = new X509TrustManager() {
public X509Certificate[] getAcceptedIssuers() {return null;}
public void checkClientTrusted(X509Certificate[] certs, String authType) {}
public void checkServerTrusted(X509Certificate[] certs, String authType) {}
};
SSLContext sc = SSLContext.getInstance("SSL");
sc.init(null, new TrustManager[] { trm }, null);
HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
我怎么知道那是 SSL handshake failed
webView.getEngine().getLoadWorker().stateProperty().addListener(
new ChangeListener() {
public void changed(ObservableValue ov,
Worker.State oldState, Worker.State newState) {
System.out.println(webView.getEngine().getLoadWorker().exceptionProperty());
...
还添加添加-Djavax.net.debug=all到VMOption显示
URL-Loader-1,处理异常:javax.net.ssl.SSLHandshakeException:
sun.security.validator.ValidatorException:PKIX路径构建失败:
sun.security.provider.certpath.SunCertPathBuilderException:
无法找到到请求目标的有效认证路径
2020-11-01