JAX-WS 非同期応答サーブレットの使用

Java™ API for XML-Based Web Services (JAX-WS) には、非同期応答サーブレットが含まれています。これは、アプリケーション・サーバー環境内で使用され、非同期で呼び出される JAX-WS 要求に対する応答を受信します。

始める前に

JAX-WS は、コールバック・モデルまたはポーリング・モデルのいずれかを使用することで、非同期クライアント呼び出しを使用する Web サービスの呼び出しをサポートします。コールバック・モデルとポーリング・モデルの両方は、ディスパッチ・クライアントと動的プロキシー・クライアントで使用することができます。 アプリケーション・サーバー環境内で実行される JAX-WS クライアントが非同期クライアント呼び出しを使用する場合、応答は非同期応答サーブレットが受信します。 非同期クライアント呼び出しモデルの使用方法については、JAX-WS Web サービスの非同期呼び出しに関する説明をご覧ください。

注: Liberty では、非同期要求および応答のメッセージ交換のために JAX-WS プログラミング・モデルをサポートしていません。 代わりに、Web Services Addressing (WS-Addressing) をメッセージ交換に使用できます。

このタスクについて

非同期応答サーブレットは、アプリケーション・サーバー内で使用され、着信非同期応答を処理します。 サーブレットは、アプリケーション・サーバーに割り当てられているものと同じセキュア HTTP ポートおよび非セキュア HTTP ポートを使用します。 アプリケーション・サーバーが始動すると、サーブレットも自動的に開始します。 非同期応答サーブレットはロール・ベースの許可検査を実行しないので、 ユーザー認証検査のみが実行されます。

非同期応答サーブレットは HTTP プロトコルと HTTPS プロトコルの両方をサポートします。 サーブレットはアプリケーション・サーバーの SSL 構成を継承するので、 アプリケーション・サーバーを構成すると、サーブレットも構成されます。 非同期応答サーブレットは、非同期応答リスナーが使用するカスタム HTTP および SSL ポート・プロパティーの影響を受けず、アプリケーション・サーバー用のアプリケーション・ポートでのみ実行されます。

手順

  1. JAX-WS クライアントに HTTP または HTTPS の どちらのトランスポート・メカニズムを使用させるかを決定します。
  2. アプリケーション・サーバーの SSL 構成を変更するために Web コンテナー・トランスポート・チェーンを構成します。 サーブレットはこれらの設定を継承します。 Web コンテナー・トランスポート・チェーンを構成する方法については、トランスポート・チェーンの構成に関する説明を参照してください。

タスクの結果

JAX-WS クライアントが HTTP または HTTPS トランスポート・プロトコルの非同期応答を受信できるように、非同期応答サーブレットが構成されます。
トラブルの回避 (Avoid trouble) トラブルの回避 (Avoid trouble): 新規アプリケーション・サーバーを環境に 追加すると非同期応答サーブレットは自動的に再始動されます。 従って、その新規アプリケーション・サーバーに関して deployment.xml ファイルを更新することができます。 非同期応答サーブレットの再始動中にアプリケーションが着信応答を受け取ると、 その着信応答は HTTP 404 エラーで失敗する可能性があります。gotcha
トラブルの回避 (Avoid trouble) トラブルの回避 (Avoid trouble): アプリケーション・セキュリティーを使用可能にした WebSphere® Application Server にクライアントがインストールされている場合、以下のステップに従って、JAX-WS サービスが非同期応答を戻すようにサービス・プロバイダーを構成する必要があります。
  1. 「サービス」 > 「ポリシー・セット」を展開し、「アプリケーション・ポリシー・セット」 > 「新規」とクリックして新規ポリシー・セットを作成します。
  2. 「一般プロパティー」パネルで、新規ポリシー・セットの名前と簡略説明を指定します。
  3. 「ポリシー」で、「追加」をクリックして、 ドロップダウン・リストから「HTTP トランスポート」を選択します。 「保存」をクリックします。
  4. 「サービス」 > 「ポリシー・セット」を展開し、「汎用プロバイダー・ポリシー・セット・バインディング」 > 「新規」とクリックします。
  5. 「バインディング構成名 (Bindings configuration name)」フィールドと「説明」フィールドを指定します。 「追加」をクリックして、 ドロップダウン・リストから「HTTP トランスポート」を選択します。
  6. 「アウトバウンド非同期サービス応答の基本認証」で、 認証ユーザーのユーザー名とパスワードを入力します。 「適用」をクリックして、「保存」をクリックします。
  7. 「アプリケーション」 > 「アプリケーション・タイプ」を展開し、 「WebSphere エンタープライズ・アプリケーション」 > 「your_application_name」とクリックします。「Web サービス・プロパティー」の下の「サービス・プロバイダーのポリシー・セットおよびバインディング」をクリックします。
  8. 「your_web_service」を選択し、「関連付け」をクリックして、ステップ 3 で作成したポリシー・セットを選択します。 「your_web_service」をもう一度選択して「バインディングの割り当て」をクリックし、 ステップ 6 で作成したバインディングを選択します。 「保存」をクリックします。
gotcha

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



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