私は SSL/HTTPS の初心者です。うまくいけば、これはばかげた質問ではありません。
https 経由で外部 Web サービスと通信する JBOSS 4.3 で実行される Web サービス クライアントを作成しています。JDK 1.6 に付属している wsimport ツール (JAX-WS) を使用してクライアントを生成しました。Web サービスとは正常に通信できますが、ログに次の警告メッセージが表示され続けます。
警告 [HTTPClientInvoker] クライアント呼び出し元の SSL ソケット ファクトリを作成できません: ソケット ファクトリ SSL コンテキストの初期化中にエラーが発生しました: トラストストア URL が見つかりません。
私が理解していることから、サービス プロバイダーが使用している証明書 (CA) を JDK が認識している限り、https 経由の通信に問題はないはずです。サービス プロバイダーは Equifax Secure を使用しているようです。jdk を確認したところ、デフォルトですでにあることがわかりました。サービス プロバイダーとも通信できますが、警告メッセージが表示される理由がわかりません。次のように設定することで、この問題を解決できる可能性があることを他の場所で読みました。
jboss run.conf の javax.net.ssl.keyStore および javax.net.ssl.trustStore
私のjdkがすでにこの証明書を信頼しているのに、なぜこれを行う必要があるのか わかりません。通信が行われているにもかかわらず、この警告メッセージが表示される理由を誰か説明してもらえますか? また、誰かが上記の 2 つの構成 (javax.net.ssl.keyStore と javax.net.ssl.trustStore) をいつ設定する必要があるかを説明してもらえますか?
ありがとう。