1

Web サービスにアクセスしています。ブラウザで Web サービスの URL にアクセスすると、証明書が署名され、自動的に受け入れられます。

私が理解していないのは、Java を使用して Web サービスにアクセスすると、次のようなものが得られるということです。

javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX パスの構築に失敗しました: sun.security.provider.certpath.SunCertPathBuilderException: 要求されたターゲットへの有効な証明書パスが見つかりません

これは、証明書が署名されていないことを意味すると思いますが、署名されています。

com.sun.net.ssl.internal.ssl認証局に自動的にアクセスして、証明書が署名されているかどうかを確認しませんか? そうでない場合、これを行うためにさらに設定する必要があるものはありますか?

4

2 に答える 2

3

署名だけでなく、より多くのチェックがあります。署名を作成した認証局は、特に検証する必要があります。Javaの信頼できる認証局のリストは、ブラウザのリストとは異なります。ブラウザでCA証明書をダウンロードし、Javaのkeytoolを使用してインストールする必要がある場合があります。

于 2012-10-04T11:08:39.510 に答える
1

接続先の Web サーバーまたは URL には、承認された CA からの有効な証明書がないようです。解決するには、この代替ソリューションを参照してください。

于 2012-10-04T11:07:32.143 に答える