WebSphere MQ メッセージング・プロバイダーのアクティベーション・スペック
アクティベーション・スペックは、WebSphere® Application Server 内部で実行するメッセージ駆動型 Bean (MDB) に対するインバウンド・メッセージ配信を構成するために使用します。アクティベーション・スペックは、メッセージ・リスナー・ポートを置き換えるものであり、現時点では安定化された機能になっています。
アクティベーション・スペックとメッセージ駆動型 Bean
アクティベーション・スペックは、WebSphere Application Server で実行する MDB と IBM MQ 内の宛先との間の関係を管理および構成する、標準化された方法です。これらは、接続の構成、Java™ Message Service (JMS) の宛先、および MDB のランタイム特性を、1 つのオブジェクト内で結合します。
メッセージ駆動型 Bean は、Enterprise Java Bean (EJB) の特殊クラスです。 これらは、アプリケーションのトランザクション性および並行性を管理する WebSphere Application Server で、Java Platform, Enterprise Edition (JEE) アプリケーションがメッセージを非同期に処理できるようにします。

- スタンドアロン・プロセスまたはアプリケーション・サーバー環境内のいずれかで実行中のメッセージング・クライアントは、JMS (あるいは MQI のようなその他のメッセージング API) を使用して、IBM MQ キュー・マネージャーで定義された IBM MQ キューまたはトピックにメッセージを送信します。
- IBM MQ アクティベーション・スペックは、メッセージのその宛先を listen するように構成されます。 新規メッセージは、検出されると宛先 (XA トランザクションの下にある可能性がある) から削除されます。
- そのメッセージは次に、onMessage メソッドを介してアクティベーション・スペックを使用するように構成されている MDB に渡されます。
- MDB は、メッセージ内の情報を使用して、関連するビジネス・ロジックを実行します。
リスナー・ポートと比較したアクティベーション・スペック
バージョン 7.0 より前のバージョンの WebSphere Application Server では、接続ファクトリー、宛先、および MDB 間の関連を定義するためにリスナー・ポートを使用します。
- アクティベーション・スペックで必要とされるオブジェクトは、アクティベーション・スペックとメッセージ宛先の 2 つだけなので、構成が簡単です。 リスナー・ポートで必要とされるオブジェクトは、接続ファクトリー、メッセージ宛先、およびメッセージ・リスナー・ポート本体の 3 つです。
- アクティベーション・スペックは、サーバー有効範囲に制限されません。 WebSphere Application Server 内のどの管理有効範囲にも定義できます。メッセージ・リスナー・ポートは、サーバー有効範囲で構成する必要があります。 つまり、ノード内のサーバーごとに、独自のリスナー・ポートが必要になります。 例えば、ノードが 3 つのサーバーで構成されている場合は、3 つの別個のリスナー・ポートを構成する必要があります。 アクティベーション・スペックはノード有効範囲で構成できるので、上記の例の場合に必要なアクティベーション・スペックは 1 つだけです。
- アクティベーション・スペックは、Java Platform, Enterprise Edition Connector Architecture 1.5 および 1.6 標準仕様 (JCA 1.5 および 1.6) の一部です。 WebSphere Application Server のリスナー・ポートのサポートは、JMS 仕様で定義されたアプリケーション・サーバー・ファシリティー・インターフェースを使用しますが、サポート自体はどの仕様にも含まれていません。
引き続き、メッセージ・リスナー・ポートを使用して IBM MQ メッセージング・プロバイダーを使用した MDB へのメッセージ配信を行うことは可能です。 特定のシナリオでは、アクティベーション・スペックを使用するよりも、リスナー・ポートを使用する方が依然として適しています。 通常は、サーバーの一部が WebSphere Application Server バージョン 7.0 より前のバージョンの WebSphere Application Server で実行している構成がこのケースに該当します。 メッセージ・リスナー・ポート (IBM MQメッセージング・プロバイダー・リソースを使用する) と、IBM MQ メッセージング・プロバイダー・アクティベーション・スペックの両方を同時に構成することが可能です。 詳しくは、メッセージ駆動型 Bean、アクティベーション・スペック、およびリスナー・ポートを参照してください。
リスナー・ポートからアクティベーション・スペックへのマイグレーションを 支援するため、WebSphere Application Server 管理コンソールの 「メッセージ・リスナー・ポート・コレクション (Message listener port collection)」パネルには、「リスナー・ポートをアクティベーション・スペックに変換」ウィザードが備えられています。このウィザードを使用して、既存のリスナー・ポートをアクティベーション・スペックに変換できます。 ただし、この機能は、リスナー・ポートで使用されていたものと同じ構成で新規アクティベーション・スペックを作成するのみです。 新規作成したアクティベーション・スペックを使用するようにアプリケーション・デプロイメントを変更することはありません。