管理コールアウト・プログラミング・モデル

管理コールアウト・プログラミング・モデル を使用すると、IMS™ アプリケーションからのアウトバウンド・メッセージを外部メッセージ駆動型 Bean (MDB) から要求サービスまたはデータに送信でき、応答データを同期または非同期で、同じトランザクション内の同じ IMS アプリケーションで受け取ることができます。

MDB は、サーバー・サイドのステートレスな Java EE コンポーネントであり、エンタープライズ情報システム (EIS) から送られるインバウンド・メッセージを処理するために Java Connector Architecture (JCA) 1.5 リソース・アダプター上でリスナーとして構成できます。MDB は、メッセージのコンシュームと処理を行うためにメッセージ配信によって活動化できる EJB コンポーネントです。

JCA 1.5 仕様では、MDB は一般的にメッセージ・エンドポイント、あるいは単にエンドポイント と呼ばれます。MDB の主な利点は、メッセージ処理とビジネス処理が明確に分離されている点、およびビジネス処理を広範囲にわたってその他の着信メッセージで再利用できる点です。

このプログラミング・モデルでは JCA 1.5 標準を利用するため、IMS TM リソース・アダプターは、コールアウト・プロトコルおよび適切な要求への応答の相関をユーザーの代わりに管理します。その結果、管理コールアウト・プログラミング・モデルは、使いやすく、コードがクリーンで、再利用の幅が広く、スケーラビリティーが高いため、非管理コールアウト・プログラミング・モデルより望ましいといえます。

次の図は、同期コールアウト・メッセージが MDB によって処理される方法を示しています。

図 1. メッセージ駆動型 Bean を使用した IMS からの同期コールアウト・メッセージの処理
この図は、メッセージ駆動型 Bean を使用して同期コールアウト・メッセージを処理するメッセージ・フローを示しています。

次の図は、非同期コールアウト・メッセージが MDB によって処理される方法を示しています。

図 2. メッセージ駆動型 Bean を使用した IMS からの非同期コールアウト・メッセージの処理
この図は、メッセージ駆動型 Bean を使用して非同期コールアウト・メッセージを処理するメッセージ・フローを示しています。
MDB コールアウト・プログラミング・モデルでは、MDB は以下を実装する必要があります。

これらのメソッドは、特定の MDB でメッセージが到着したときに、コールアウト・メッセージが非同期であるか同期であるかに従って、IMS TM リソース・アダプターによって呼び出されます。IMS TM リソース・アダプターはコールアウト・プロトコルを自動的に処理します。同期コールアウト・メッセージの場合は、IMS TM リソース・アダプターはさらに、相関トークンの引き渡しを処理します。


フィードバック