Menu Close
第40章 非同期アプリケーションの開発
概要
JAX-WS は、サービスに非同期でアクセスするための簡単なメカニズムを提供します。SEI は、サービスに非同期でアクセスするのに使用できる追加のメソッドを指定できます。Apache CXF コードジェネレーターは、追加のメソッドを生成します。ビジネスロジックを追加するだけです。
40.1. 非同期呼び出しの型
Apache CXF は、通常の同期呼び出しモードに加えて、以下の 2 つの非同期呼び出しの形式をサポートします。
-
ポーリングアプローチ: ポーリングアプローチを使用してリモート操作を呼び出すには、出力パラメーターを持たないが
javax.xml.ws.Response
オブジェクトを返すメソッドを呼び出します。Response
オブジェクト (javax.util.concurrency.Future インターフェースから継承) をポーリングして、応答メッセージが到達したかどうかを確認できます。 -
コールバックアプローチ: コールバックアプローチを使用してリモート操作を呼び出すには、コールバックオブジェクト (
javax.xml.ws.AsyncHandler
型) をパラメーターの 1 つとして参照するメソッドを呼び出します。応答メッセージがクライアントに到達すると、ランタイムがAsyncHandler
オブジェクト上でコールバックし、応答メッセージの内容を提供します。