Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java PKIX路径生成失败:sun.security.provider.certpath.SunCertPathBuilderException:找不到请求目标的有效证书路径_Java_Ssl_Jakarta Mail - Fatal编程技术网

Java PKIX路径生成失败:sun.security.provider.certpath.SunCertPathBuilderException:找不到请求目标的有效证书路径

Java PKIX路径生成失败:sun.security.provider.certpath.SunCertPathBuilderException:找不到请求目标的有效证书路径,java,ssl,jakarta-mail,Java,Ssl,Jakarta Mail,我正在尝试连接到邮件服务器并读取我的收件箱。我的代码适用于gmail,但由于以下错误,我的exchange服务器似乎无法使用: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requeste

我正在尝试连接到邮件服务器并读取我的收件箱。我的代码适用于gmail,但由于以下错误,我的exchange服务器似乎无法使用:

 sun.security.validator.ValidatorException: PKIX path building failed: 
 sun.security.provider.certpath.SunCertPathBuilderException: 
 unable to find valid certification path to requested target
根据我的研究,我尝试了以下方法: 1.下载并运行以下命令:

java InstallCert mail.simbatech.biz:993

并导入了一个传入的证书,之后我将
jssecacerts
文件复制到java安装的jre/lib/security目录中,但相同的错误仍然存在。有没有其他方法可以做到这一点?

听起来你做的事情是对的,但显然你的应用程序没有使用你创建的证书文件。你的应用程序在哪里运行?如果它在应用服务器中运行,服务器可能会覆盖信任存储配置,因此可能会忽略您的jssecacerts文件。尝试启用附加调试输出,如中所述。

我注意到我需要通过jssecacerts文件复制到jdk/jre/lib/security目录以及jre/lib.security。。成功了。