Ich versuche, eine Verbindung zu einem REST-Dienst über HTTPS (SSL) herzustellen, und es hat nicht funktioniert. Der Fehler ist PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
. Ich verfolgte das Problem nach unten, die Tatsache, dass die Certificate Authority, ein Ort namens www.identrust.com, nicht zur Standardliste der vertrauenswürdigen Autoritäten im JRE-Standard-Keystore hinzugefügt wurde. Siehe Will the cross root cover trust by the default list in the JDK/JRE? oder Which browsers and operating systems support Let’s Encrypt.Java SSL-Verbindungslösung, wenn die Zertifizierungsstelle nicht in JRE ist
ich ein paar vorgeschlagenen Lösungen wie ignoriert Authentifizierung gesehen haben (Java: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target) oder das Zertifikat in den JRE-Schlüsselspeicher (“unable to find valid certification path to requested target”, but browser says it's OK) importieren, aber was ich will ist meine Java SE-Anwendung zu tun haben erfolgreich mit SSL-Sites zu verbinden, haben Zertifikate von www.identrust.com, sowie alle anderen gültigen Seiten. Mit anderen Worten, ich möchte den JRE-Keystore nicht bei jedem JDK-Update ändern, und ich möchte das Zertifikat nicht ignorieren.
Ich kann das Zertifikat von Identrust von ihrer Website erhalten (Certificate Chain Download Instructions), also wie füge ich es in die "Vertrauenskette" für meine Anwendung ein?
So ziemlich die Schlussfolgerung, die ich zu mir kam, vielen Dank für das Feedback. –