我的netbeans 8正在使用以下Java:
因此,我在所需位置安装了证书,并验证了以下证书:
C:\Program Files\Java\jdk1.8.0_11\jre\bin>keytool -list -v -keystore cacerts -alias exported -storepass changeit
我收到了以下内容:
Alias name: exported
Creation date: Sep 4, 2014
Entry type: trustedCertEntry
& so on and so forth..
我重新启动计算机以确保没有不一致。
我还使用以下命令检查了已安装的证书:
C:\Program Files\Java\jdk1.8.0_11\jre\bin>keytool -list -storepass changeit -noprompt -keystore "C:\Program Files\Java\jdk1.8.0_11\jre\lib\security\ca
certs"
我收到了以下内容:
Keystore type: JKS
Keystore provider: SUN
Your keystore contains 87 entries.
即使在安装证书之前和安装证书之后,该数字仍为87。是什么原因没有出现在这里以及为什么证书相关信息出现在上面的第一个命令中?
是原因,我在我的apache tomcat服务器日志中得到以下内容:
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at sun.security.ssl.Alerts.getSSLException(Alerts.java:192)
at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1917)
at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:301)
at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:295)
at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1369)
at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:156)
我检查过其他帖子时遇到同样的错误,其中大部分内容都是关于添加我已经完成的证书,如上所示。