私の知る限り、MDB で可能なのは AUTO_ACKNOWLEDGE と DUPS_OK_ACKNOWLEDGE だけです。XA トランザクションを回避するために、CLIENT_ACKNOWLEDGE のようなものが必要です。
基本的に私が欲しいもの:メッセージを取得する->ローカルトランザクションを開始する->データベース操作を実行する->ローカルトランザクションを終了する->メッセージを確認する
これを達成する方法を知っていますか?
現在、Jboss 5.1.GA を使用しています。
私の知る限り、MDB で可能なのは AUTO_ACKNOWLEDGE と DUPS_OK_ACKNOWLEDGE だけです。XA トランザクションを回避するために、CLIENT_ACKNOWLEDGE のようなものが必要です。
基本的に私が欲しいもの:メッセージを取得する->ローカルトランザクションを開始する->データベース操作を実行する->ローカルトランザクションを終了する->メッセージを確認する
これを達成する方法を知っていますか?
現在、Jboss 5.1.GA を使用しています。
ここで MDB 戦略の包括的な説明を見つけました。
私の知る限り、手動で ack を実行する方法はありませんが、Bean Managed Transaction を使用すると、onMessage メソッドで例外が発生した場合に ack が発生しません。したがって、トランザクションを「手動で」開始および終了することができ、例外が発生した場合、メッセージは確認されません。