だから私は、WSDLをして、ここで問題のビットに実行し、Javaで複数の本命を選択しています。たとえば、スマートカードには、署名、暗号化、識別のための複数の証明書があります。私はこのWSDLクライアント認証と複数サート
System.setProperty("javax.net.ssl.keyStore",
keyStore);
System.setProperty("javax.net.ssl.keyStorePassword",
keyStorePassword);
ように私はこのtutorialを以下のよ、クライアント認証接続用のコードを生成しますが、私の知る限り、あなたはプロパティを設定することにより、WSDLにキーストアへのパスを与えるWSDLを持っています。 スマートカードのようなキーストア内の複数の証明書について、このスマートカードで使用する証明書を指定する方法がないため、問題が発生します。 wsdlがキーストア内の最初の証明書を選択するように見えますが、これは認証に間違った証明書である可能性があります。
私の質問は2倍です:
は、証明書を使用するには、WSDLを伝えるために
System.setProperty
を行う以外に方法はありますか?ほとんどのコードがwsconsume
を使用してwsdlによって生成されているので、どの証明書を指定するために何ができますか?System.setProperty()
だけでパスを指定することができます。オブジェクトを指定する方法はありますか?私がスマートカードから証明書を取得する方法は、SunPKCS11クラス(見つけたhere)を使用することです。しかし、これは私にキーストアオブジェクトを返し、私が知る限り、System.setProperty()
はパスを必要とします。
ありがとうございました!