【发布时间】:2021-05-07 22:39:45
【问题描述】:
一个简单的。
JMS 有一个重新传递消息的概念。 可以为 JMS 队列配置最大重新传递计数,在此之后消息将不再重新传递。
javax.jms.Message 接口提供了检查消息是否被重新传递的方法,并获取当前的重新传递计数。
有什么方法可以在 JMS 客户端运行时找出最大重新传递计数?
我想要做的是在last重新传递消息时触发方法调用。我可以只配置那个数字,但我想知道 JMS 是否在某个地方公开了这个值,以便我可以依赖它。
【问题讨论】:
-
我不想将此作为答案,因为它似乎没有帮助,但没有(至少我不知道)。特定的 JMS 提供者可能会在 Destination 接口的扩展上提供此数据,但我从规范中不知道。
-
+1。这很有帮助。我怀疑没有办法以这种方式获取该信息,但我正在仔细检查。干杯!
-
如何获得当前的重新投递次数?消息接口只公开一个布尔值,无论它当前是否被重新传递。
-
对于 Tibco EMS 我这样做 > int deliveryCount = message.getIntProperty("JMSXDeliveryCount");我听说 IBM MQ 使用相同的