【问题标题】:java web service client trying to access web service through SSL - TrustManagerFactoryImpl is not initializedjava Web 服务客户端尝试通过 SSL 访问 Web 服务 - TrustManagerFactoryImpl 未初始化
【发布时间】:2016-03-23 07:00:34
【问题描述】:

我是 Web 服务客户端,我通过 SSL 连接到 Web 服务。

这是一个 2-way SSL 并且生产者共享了证书。我确实运行了 InstallCert.java,获得了别名并创建了一个 Keystore。 我正在使用weblogic 应用程序服务器,并将我的密钥库放在其中。

现在当我运行它时,我得到一个错误,

Caused by: java.lang.RuntimeException: java.lang.IllegalStateException: 
                                      TrustManagerFactoryImpl is not initialized

在此之前,我可以看到它正在尝试加载身份证书和私钥。但是按照标准,生产者不愿意与我们共享私钥。

对此的任何建议都会对我有很大帮助。谢谢。

【问题讨论】:

  • 网络服务的制作者和你分享了什么?只是证书还是 P12?
  • 是的,生产者刚刚共享了证书。
  • 如果是 2 路 SSL,你需要 P12。

标签: java web-services ssl keystore weblogic-10.x


【解决方案1】:

我解决了。 我将我的 .cer 文件添加到 weblogic 服务器引用的 cacerts(使用 keytool 导入)。在密钥库部分,我保留了默认选项(演示身份和演示信任)。在 SSL 部分,我转到高级,单击复选框(“使用 JSSE SSL”)。 有效。

【讨论】:

  • 我有一个 Weblogic 12c 的本地实例,一段时间后由于某种原因出现此错误。我只是重新输入了我的密钥库的密码并保存,重新启动了托管服务器,它又可以工作了。
【解决方案2】:

我在连接到需要 SSL 连接的 MySQL 数据库时遇到了这个问题。

事实证明,对我来说,需要更新驱动程序版本才能正确处理 JDBC URL 中的信任库配置。

【讨论】:

    猜你喜欢
    • 2012-11-13
    • 1970-01-01
    • 2012-12-07
    • 2014-09-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多