[解決済み] javax.net.ssl.SSLHandshakeException Errorを解決する方法は?
質問
VPNで接続し、インベントリAPIをセットアップして商品リストを取得したところ、正常に動作しています。Webサービスから結果を取得し、UIにバインドします。また、Expressチェックアウトを行うためにPayPalをアプリケーションに統合しましたが、支払いのために呼び出しを行うと、このエラーに直面します。私は、バックエンド処理にサーブレットを使用しています。どなたかこの問題を解決する方法を教えてください。
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
解決方法は?
まず、接続しようとするサーバーから公開証明書を取得する必要があります。これは、サーバーの管理者に連絡して求めるなど、さまざまな方法で行うことができます。 OpenSSLを使用してダウンロードする あるいは、このサーバーはHTTPサーバーのようなので、任意のブラウザで接続し、ページのセキュリティ情報を表示し、証明書のコピーを保存することができます。(Googleは、あなたの特定のブラウザで何をすべきか、正確に教えてくれるはずです)。
証明書をファイルに保存したので、それをJVMのトラストストアに追加する必要があります。以下の通りです。
$JAVA_HOME/jre/lib/security/
JREの場合、または
$JAVA_HOME/lib/security
というファイルがあり、JDKの場合は
cacerts
この証明書には、よく知られている認証局の公開証明書が含まれています。新しい証明書をインポートするには、cacertsへの書き込み権限を持つユーザーとしてkeytoolを実行します。
keytool -import -file <the cert file> -alias <some meaningful name> -keystore <path to cacerts file>
ほとんどの場合、パスワードを要求されるでしょう。Javaに同梱されているデフォルトのパスワードは
changeit
. ほとんどの人はこれを変更しません。これらの比較的簡単な手順を完了すると、あなたは安全で、正しいサーバと正しいサーバとだけ話していることが保証された通信を行うことができます(そのサーバが秘密鍵を失わない限りは)。
関連
-
[解決済み] トークンのシンタックスエラー、これらのトークンを削除してください [closed].
-
[解決済み] ボタンでTextFieldをクリアする(Java)
-
[解決済み] なぜJPAには@Transientアノテーションがあるのですか?
-
[解決済み] JOGLまたはLWJGLの既成のプロジェクト
-
[解決済み] javascriptでExpression言語を使うには?
-
[解決済み] Java の文字列インデックスが範囲外です。0 [閉店]
-
[解決済み] スリーピング中のスレッドが割り込まれ、データベースへの接続が失われる
-
[解決済み] Javaでdoubleをfloatに変換する
-
[解決済み] x--やx++はここで何をするのですか?
-
[解決済み] [Solved] javax.net.ssl.SSLHandshakeException の解決: sun.security.validator.ValidatorException: PKIX パスの構築に失敗しました エラー?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] javaで部分クラスを実装する方法
-
[解決済み] 警告: コンテキスト初期化中に例外が発生 - 更新の試みはキャンセルされました。
-
[解決済み] android.support.v4.app.FragmentActivity' で 'TAG' がプライベートアクセスされている。
-
[解決済み] Javaでのスキャナが動作しない
-
[解決済み] javax.naming.NameNotFoundException
-
[解決済み] 型の不一致:ArrayListからListへの変換ができない
-
[解決済み] ファイルを作成せずに、ファイルが存在するかどうかをチェックする
-
[解決済み] Apache Camelのログに簡単なテキストを記録する
-
[解決済み] java.lang.ClassCastException: java.lang.Long を java.lang.Integer にキャストできない(java 1.6
-
[解決済み] [Solved] javax.net.ssl.SSLHandshakeException の解決: sun.security.validator.ValidatorException: PKIX パスの構築に失敗しました エラー?