2

HttpsURLConnectionを使用して Web サイトへの HTTPS 接続を確立し、PUT 要求を実行しようとしています。OutputStreamWriterfromを作成しようとするとHttpsURLConnection.getOutputStream()、次の例外がスローされます。

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

ページは証明書 (StartCom 発行) を取得したばかりです - Java に証明書が存在することを手動で認識させる必要がありますか? 同じ Web サイトの他のページに問題なく接続できますが、証明書が異なります。

4

2 に答える 2

5

StartCom yia ツール keytool (JDK から) のルート証明書を Java キー ストア (JKS) にインポートし、キー ストアを「信頼できるストア」として設定できます。

以下のセクション「証明書のエクスポートとインポート」を参照してください。

http://java.sun.com/developer/technicalArticles/Security/secureinternet2/

その記事で言及されているコマンド:

証明書を trustedcerts.jks にインポートします。

keytool -import -keystore trustedcerts.jks -alias qusay -file server.crt

カスタム tuststore を使用して Java を起動します。

java -Djavax.net.ssl.trustStore=trustedcerts.jks com.example.MyClass

または、実行時にトラストストアを設定できます。

System.setProperty("javax.net.ssl.trustStore","./trustedcerts.jks");
于 2011-07-11T08:58:59.370 に答える
0

この質問も参照してください: StartCom CA 証明書を Windows JRE にインポートする

これは、StartCom 証明書を JDK の信頼できるストアにインポートするためのスクリプトにリンクしています。

于 2012-06-01T11:10:16.997 に答える