【发布时间】:2017-01-11 12:50:39
【问题描述】:
我知道这个问题似乎没有很多 stackoverflow,例外是与缺少信任库有关 - 但这是我的问题:
- 在带有 Java 8.0.71 的 Windows 上使用 Apache Tomcat v7.0.56 作为服务器
- 修改了 tomcat/conf/server.xml 以包含 SSL 连接器和 truststoreType="PKCS12", truststoreFile="conf/regtomcat.truststore" truststorePass="password"
我启动了 tomcat,我知道它正在正确读取此信任库文件,因为我最初没有 pkcs12 格式的文件,并且 tomcat 在启动时报告了错误。我也尝试破坏文件位置只是为了看到tomcat启动失败,因为它找不到文件。所以 tomcat 启动正常 - 它正在读取信任库,这必须意味着它存在并且可以读取。
我将一个 p12 文件加载到我的浏览器证书中,然后转到我的应用程序 URL。然后我得到了tomcat错误:
handling exception: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException:
the trustAnchors parameter must be non-empty
鉴于我的委托人存在,并且包含我的证书 - 问题可能是什么?
我使用 keytool 生成了所有证书和信任库。信任库是使用命令创建的
keytool -importcert -alias regClient -storetype PKCS12 -keystore regtomcat.truststore -file regClient.cer
【问题讨论】: