2

这个问题有点棘手。我试图通过 LDAPS 将我的 war 文件连接到 Active Directory。在 IntelliJ IDEA 的调试模式下运行时,代码运行良好。

当我在同一台或不同的机器上安装战争文件时,我面临这个错误。

sun.security.validator.ValidatorException: PKIX path building failed:    sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

证书是自签名的。我已在 中添加 CA.crt,在truststore.jksLDAP.cer 中添加cacerts。我还尝试添加“jssecacerts”,但结果相同。

注意:我正在使用 Apache Shiro 框架。

如何避免这个错误?为什么它没有进入调试模式?

4

3 回答 3

4

这不是 Shiro 问题。你的证书有问题。我怀疑您的 IDE 使用的 Java 安装可能与您部署的 WAR 的执行位置不同。

之前已处理过此异常How to ignore PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException? .

另外,我发现这篇文章很有用PKIX path building failed: SunCertPathBuilderException: unable to find valid certificate path to requested target。.

于 2016-02-04T17:59:01.103 回答
0

如果您使用 VPN 或转发代理,您只需将代理的证书添加到 Java cacerts。

检查这个答案如何做到这一点。https://stackoverflow.com/a/9619478/4144572

于 2021-10-21T07:00:34.453 回答
0

肯定是证书的问题。对我有用的是,将所需的证书放在C -> 程序文件-> java -> jre -> lib -> 安全位置。在此位置粘贴证书后,构建成功

于 2019-11-20T12:24:16.457 回答