アドレッシング・フィーチャーを使用した、JAX-WS アプリケーションに対する Web サービス・アドレッシング・サポートの使用可能化

JAX-WS アプリケーションの場合、コード内でアドレッシング・フィーチャーを使用することで、 クライアント・アプリケーションの開発時に WS-Addressing サポートを使用可能にできます。

このタスクについて

クライアント・コード内で、次のいずれかのアドレッシング・フィーチャー・クラスを使用します。
  • AddressingFeature - このクラスは、WS-Addressing 2005/08 仕様に準拠する WS-Addressing ヘッダーが含まれているメッセージを送信する場合に使用します。
  • SubmissionAddressingFeature - このクラスは、WS-Addressing 2004/08 仕様に準拠する WS-Addressing ヘッダーが含まれているメッセージを送信する場合に使用します。
両方のフィーチャー・クラスを使用する場合、使用される仕様は、指定したエンドポイント参照のタイプによって異なります。 例えば、W3CEndpointReference オブジェクトを指定すると、使用される仕様は 2005/08 仕様になります。 あるエンドポイント参照を指定し、そのタイプがフィーチャー・クラスで示されたタイプと競合する場合 (例: SubmissionAddressingFeature インスタンスがある W3CEndpointReference オブジェクト)、エラーがスローされます。 エンドポイント参照を指定しない場合、デフォルトの仕様は 2005/08 仕様です。
アドレッシング・フィーチャー・インスタンスごとに、 オプション・パラメーターを最大 3 個まで指定します。
表 1. アドレッシング・フィーチャーのパラメーター. この表では、種々のアドレッシング・フィーチャー・パラメーターとそれらに指定できる値、および説明をリストします。
パラメーター名 指定可能な値 説明
enabled

true (デフォルト)
false

WS-Addressing サポートが使用可能かどうか
required

true
false (デフォルト)

WS-Addressing ヘッダーが必須かどうか。
responses

Responses.All (デフォルト)
Responses.ANONYMOUS
Responses.NON_ANONYMOUS

同期または非同期のどちらのメッセージ交換パターンを使用するか。 メッセージを同期メッセージ・パターンで送信する場合は Responses.ANONYMOUS を指定し、非同期メッセージ交換パターンで送信する場合は Responses.NON_ANONYMOUS を使用します。
注: このパラメーターは、SubmissionAddressingFeature クラスでは サポートされません。
注: アドレッシング・フィーチャー・クラスは、SOAP (1.1 または 1.2) over HTTP バインディングでのみ使用できます。 別のバインディング (XML over HTTP など) でこのクラスを使用すると、クライアントで例外がスローされ、サーバーで Web サービスのデプロイが失敗します。

手順

いずれかのアドレッシング・フィーチャー・クラスのインスタンスを作成し、必要に応じて パラメーターを指定します。 例えば、WS-Addressing が使用可能かつ必須であり、2005/08 仕様および非同期メッセージ交換パターンを使用するように指定するには、以下のコードを使用します。
AddressingFeature feat = new AddressingFeature(true, true, AddressingFeature.Responses.NON_ANONYMOUS);
2004/08 仕様に対して WS-Addressing が使用不可になるように設定するには、以下のコードを使用します。
SubmissionAddressingFeature feat = new SubmissionAddressingFeature(false);

タスクの結果

WS-Addressing を使用可能に指定すると、クライアントは SOAP メッセージに WS-Addressing ヘッダーを組み込むようになります。ヘッダーは、使用されるフィーチャー・クラスのタイプによって指定される WS-Addressing 仕様に準拠します。 サーバーでアノテーションが使用されない場合、 またはポリシー・セットを使用して WS-Addressing を使用可能にする場合、 サーバーは 2005/08 と 2004/08 の両方の仕様を受け入れます。

WS-Addressing を必須と指定した場合に、 クライアントが WS-Addressing ヘッダーが含まれないメッセージを受け取ると、クライアントは フォールトを返します。

responses 属性を指定すると、対応するメッセージ交換パターンが使用されます。


トピックのタイプを示すアイコン タスク・トピック



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twbs_wsa_dep_jaxws_feat
ファイル名:twbs_wsa_dep_jaxws_feat.html