非 Application Server Facilities (非 ASF) モードの操作を使用している (NON.ASF.RECEIVE.TIMEOUT
プロパティーにゼロ以外の値を設定したため) ときに、Bean 管理トランザクションを使用したメッセージ駆動型 Bean が実行時例外を生成した場合、
NON.ASF.BMT.ROLLBACK.ENABLED プロパティーによって、メッセージが宛先に返されるかどうかが決まります。
注: メッセージ・リスナー・サービスは、以下のアプリケーション・サーバー・ファシリティー (ASF) および
非アプリケーション・サーバー・ファシリティー (非 ASF) という 2 つの操作モードを備えています。
- ASF モードは、アプリケーションに並行性およびトランザクションのサポートを提供します。
パブリッシュ/サブスクライブ・メッセージ指向 Bean の場合には、ASF モードによって、より良いスループットおよび並行性が得られます。これは、非 ASF モードでは、リスナーは単一スレッドになっているためです。
- 非 ASF モードは、JMS ASF をサポートしていないサード・パーティーのメッセージング・プロバイダーで主に使用します。JMS ASF は、JMS 仕様のオプションの拡張機能です。非 ASF モードも、トランザクション指向です。ただし、パスの長さが ASF モードより短いため、通常はパフォーマンスが向上します。
z/OS システムでは、非 ASF モードを選択できません。
このプロパティーを false (デフォルト) に設定すると、メッセージ駆動型 Bean にメッセージを渡す前に、メッセージが自動的に確認されます。
このプロパティーを true に設定すると、メッセージがメッセージ駆動型 Bean によって正常に処理された後に、メッセージ・リスナー・サービスがクライアントに対してメッセージの確認応答を送信します。Bean がメッセージに対して例外を生成した場合、メッセージ・リスナー・サービスはそのメッセージのリカバリーを要求します。