java - SunCertPathBuilderException 尽管设置了信任库属性

标签 java web-services ssl ssl-certificate truststore

我需要使用一些 HTTPS 网络服务。要使用证书,我正在设置 (javax.net.ssl) trustStoretrustStorePasswordkeyStorekeyStorePassword 通过 System.setProperty 的属性。

如果我执行 new URL([HTTPS...WSDL]).openStream(),它会起作用。所以,我确定信任和 keystore 属性没问题(如果不设置这些属性,我的例程就会失败)。

问题是当我尝试使用该服务时,我得到了著名的

sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

异常。

有人知道我需要做什么吗? 非常感谢。

最佳答案

三种可能的失败:

  1. 您正在使用自签名证书。
  2. 您的证书已由通用 CA(证书颁发机构)使用中间证书签署,但您的网络服务器不提供他们的中间证书。
  3. 服务器证书和 CA 中间证书均由您的网络服务器提供,但 Java 信任库不包含根证书。

要解决最后一步,请使用: Import CA root cert

关于java - SunCertPathBuilderException 尽管设置了信任库属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30063754/

相关文章:

java - Response.entity().build 未返回所有结果

azure - Web 部署到 Azure 失败 "Could not create SSL/TLS secure channel"

ssl - 移动设备上的 Chromium(Chrome、Brave)停止信任我的本地 LetsEncrypt 证书

java - 当我们说对象由垃圾收集器或 GC 收集时,在 JVM 或内存级别会发生什么?

java - Java Web 应用程序中的上下文路径是如何设置的?

Java读取没有前缀但在命名空间范围内的xml元素

sharepoint-2007 - Sharepoint 列表.asmx : remove "ows_MetaInfo" field from GetListItems method response xml

java - 我可以在 jsp fmt :messages instead of index numbers? 中使用实际的参数名称吗?如果可以,怎么办?

JAVA JPanel 不显示图像

ios - Alamofire 没有评估和发送客户端证书