HornetQ (2.1.13) JMS キューからメッセージを受信するメッセージ駆動型の EJB があります。問題のアプリケーションは JBoss 7.1 で実行されます。次のように、xml を使用してサーバー上でこれを構成できることを知っています。
<max-delivery-attempts>3</max-delivery-attempts>
この方法を使用しないことを検討している理由は、それが最後の試行 (つまり試行番号 3) である場合に何らかのロジックを実行するためです。
問題のコードは JBoss 4 からアップグレードされたもので、配信試行の最大回数を以下のように設定できます。ただし、これは JBoss 4 (HornetQ ではない) で使用される JMS 実装の非常に特殊な設定です。
@MessageDriven(name = "SomeMessageBean", activationConfig = {
@ActivationConfigProperty(propertyName = "dLQMaxResent", propertyValue = "3")
})
HornetQ で<max-delivery-attempts>
メッセージ駆動型 Bean の Java コード (できればアノテーションを使用) で属性を直接設定する方法はありますか? それとも、それが最後の再送信であるかどうかを確認する JMS の方法もありますか (つまり、番号をまったく気にする必要はありません)。