0

このコードからSoapResponseを取得しています

SOAPConnectionFactory sfc = SOAPConnectionFactory.newInstance();
SOAPConnection connection = sfc.createConnection();
SOAPMessage soapMessageResponse = connection.call(soapRequest, new URL(serviceLocation));

どうすればSSLベースにすることができますか?

指定したキーストアを指定SSLSocketFactoryして作成する方法を知っています。SSLContext

どうすればSOAPConnectionクラスにまたはについて伝えることができますSSLSocketFactorySSLContext?私のコミュニケーションを確保するために。

システムプロパティまたはxmlファイルにキーストアを設定したくありません。Websphere7を使用しています。

編集:

Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
    at java.lang.reflect.Method.invoke(Method.java:600)
    at com.ibm.ws.webservices.engine.soap.SOAPConnectionImpl.callJAXWSDispatch(SOAPConnectionImpl.java:416)
    ... 49 more
Caused by: javax.xml.soap.SOAPException: javax.xml.ws.WebServiceException: javax.net.ssl.SSLHandshakeException: General SSLEngine problem
    at com.ibm.ws.webservices.engine.xmlsoap.saaj13only.SOAPConnectionJAXWS.call(SOAPConnectionJAXWS.java:72)
    ... 54 more
Caused by: javax.xml.ws.WebServiceException: javax.net.ssl.SSLHandshakeException: General SSLEngine problem
4

4 に答える 4

2

管理コンソールにログインし、SSL証明書とキー管理を介して証明書を追加します>SSL構成>NodeDefaultSSLSettings>キーストアと証明書>NodeDefaultTrustStore>署名者証明書

于 2012-07-13T13:47:46.227 に答える
1

通常、https://で始まるエンドポイントURLを指定する以外に何もする必要はありません。

Axis2はhttp-commonsを使用し、http-commonsはJSSEを使用してセキュリティを処理します。したがって、JSSEを正しく構成している限り、URLでhttpsを渡す以外は、変更なしですぐに機能するはずです。

于 2012-06-05T14:34:29.033 に答える
0

イムラン、このヒントを試しましたか?「接続しようとしているリモートホストから署名者証明書を取得し、それらをWASサーバーのトラストストアに追加する必要があります。」

http://turanunes.wordpress.com/2011/05/04/cwpki0022e-ssl-handshake-failure/

于 2012-06-07T13:50:55.570 に答える
0

このコード行は、SSLの場合は機能しません。

SOAPMessage soapMessageResponse = connection.call(soapRequest, new URL(serviceLocation));

axis2 WebサービスからSSLを介して応答を取得するには、指定されたのようなストリームを開く必要があります[here][1]

于 2012-07-20T05:42:13.717 に答える