详细消息sun.security.valdator.ValidatorException:PKIX路径构建失败: sun.security.provider.certpath.SunCertPathBuilderException:无法找到被请求目标的有效证书路径
导致javax.net.ssl.SSLHandshakeException:sun.security.valdator.valdatorException:PKIX路径构建失败:sun.security.provider.certpath.SunCertPathBuilderException:无法找到被请求目标的有效证书路径
App1(port 8443)
App2(port 443)
. App1
App2
App1
App2
server.xml
keystoreFile="c:/.keystore" keystorePass="changeit"
执行部分第1段
System.setProperty("javax.net.ssl.trustStore", "C:/.keystore");System.setProperty("javax.net.ssl.trustStorePassword", "changeit");
执行部分第2段
CATALINA_OPTS -- param name-Djavax.net.ssl.trustStore=C:\.keystore -Djavax.net.ssl.trustStorePassword=changeit ---param value
执行部分第3段
JAVA_OPTS -- param name-Djavax.net.ssl.trustStore=C:\.keystore -Djavax.net.ssl.trustStorePassword=changeit ---param value
但什么都没起作用 .
最后起作用的是什么
但是这种方法对于devbox的设置很好,但是我不能在生产环境中使用它。
server.xml
app2
System.setProperty("javax.net.ssl.trustStore", "C:/.keystore") and System.setProperty("javax.net.ssl.trustStorePassword", "changeit");
app1
URL url = new URL(urlStr);URLConnection conn = url.openConnection();if (conn instanceof HttpsURLConnection) { HttpsURLConnection conn1 = (HttpsURLConnection) url.openConnection(); conn1.setHostnameVerifier(new HostnameVerifier() { public boolean verify(String hostname, SSLSession session) { return true; } }); reply.load(conn1.getInputStream());
相关分类