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

当我在相同或不同的计算机上安装war文件时,遇到此错误。

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


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

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

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

最佳答案

这不是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 certification path to requested target.有用。

08-05 21:14