HornetQ JMS:在Java代码中配置最大交付尝试次数
我有一个消息驱动的EJB,它从HornetQ(2.1.13)JMS队列接收消息。该应用程序运行在JBoss7.1上。我知道我可以在服务器上使用xml进行配置,如下所示:HornetQ JMS:在Java代码中配置最大交付尝试次数,java,jboss,jms,jboss7.x,hornetq,Java,Jboss,Jms,Jboss7.x,Hornetq,我有一个消息驱动的EJB,它从HornetQ(2.1.13)JMS队列接收消息。该应用程序运行在JBoss7.1上。我知道我可以在服务器上使用xml进行配置,如下所示: 3 我考虑不使用这种方式的原因是,如果是最后一次尝试(即第3次尝试),我们会执行一些逻辑,因此我不希望将此配置放在几个地方 所讨论的代码是从JBoss4升级而来的,在JBoss4中,可以按如下方式配置最大的交付尝试次数。但是,对于JBoss4(不是HornetQ)中使用的JMS实现,这是非常具体的配置 @MessageDriv
3
我考虑不使用这种方式的原因是,如果是最后一次尝试(即第3次尝试),我们会执行一些逻辑,因此我不希望将此配置放在几个地方
所讨论的代码是从JBoss4升级而来的,在JBoss4中,可以按如下方式配置最大的交付尝试次数。但是,对于JBoss4(不是HornetQ)中使用的JMS实现,这是非常具体的配置
@MessageDriven(name=“SomeMessageBean”,activationConfig={
@ActivationConfigProperty(propertyName=“dlqMaxRecent”,propertyValue=“3”)
})
HornetQ中有没有办法直接在消息驱动Bean的Java代码(最好是带有注释)中设置属性
?或者,是否有JMS方法来确定它是否是最后一次重新发送(意味着我根本不必关心号码)?对于hornetq,您必须在地址设置中指定它。所以您不会在bean上指定它。您将在队列级别指定它
这里的这个文档可能会给你一个更好的想法:
(我指的是一个2.3.0文档,但这与HornetQ的第一个版本相同)你对此有100%的把握吗?这一定意味着JBoss4和HornetQ中的JMS实现之间存在根本的区别?事实上,我还不太熟悉JMS,所以我真的不知道。我是:)我是HornetQ的项目负责人。我们不想强制在每个MDB上设置这些设置。这是代理的属性,而不是资源适配器。看看我发给你的链接。这是做这件事的方法。。HornetQ是消息传递提供者的一种新实现方式,比JBaseMQI更好,认为您是一个可信的源。在我发布问题之前,我实际上已经阅读了你链接到的部分。我想这就是我问这个问题的原因,因为我只找到了在队列级别这样做的方法。无论如何,非常感谢。