【发布时间】:2013-05-24 21:10:58
【问题描述】:
我有一个消息驱动的 EJB,它从 HornetQ (2.1.13) JMS 队列接收消息。有问题的应用程序在 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有什么办法可以直接在Message Driven Bean的Java代码中设置属性<max-delivery-attempts>(最好带注解)?或者甚至有一个 JMS 方法来确定它是否是最后一次重新发送(这意味着我根本不需要关心这个数字)?
【问题讨论】:
标签: java jboss jms jboss7.x hornetq