0

Tomcat6で実行されているWebアプリケーションとJavaでプログラムされたクライアントアプリケーションがあります。クライアントは、メッセージを検証して適切なWebサービスに転送するプロキシサーブレットにSOAPMessageを送信します。SAAJを使用してクライアントにSOAPMessageを送信します。

    SOAPMessage soap = soapFactory.createMessage();
    SOAPBody body = soap.getSOAPBody();
    body.addDocument( document );

    SOAPConnectionFactory soapFactory = SOAPConnectionFactory.newInstance();
    SOAPConnection connection = soapFactory.createConnection();

    SOAPMessage response = connection.call(soap, PROXY_URL);

これは正常に機能しますが、プロキシサーブレットがCookie(JSESSION)を使用してセッションを実装する必要があります。

応答からそのCookieを取得するにはどうすればよいですか?それを行うためのより良い方法が存在するかどうか知っていますか?

4

1 に答える 1

1

@mattevigo:あなたは2つのことを混ぜていると思います。SOAP は、HTTP トランスポート プロトコルを使用するアプリケーション レベルのプロトコルです。HTTPConnection を開いて低レベルの作業を行い、セッション管理に HTTP cookie を使用するか、SOAPConnection を開いて高レベルの SOAP メッセージを直接操作するかを選択できます。SAAJ API 自体では、HTTP データを直接操作できないと思います。 . できることは、通信用に HTTP 接続を開き、SAAJ API を使用して着信 XML を解析し、データをフェッチすることです。

于 2011-07-13T12:06:59.617 に答える