我正在使用带有活动 mq 的 spring-jms。
我ErrorHandler
设置了一个侦听器,每次 jms 消息传递失败时都会接收回调 - 即处理消息的方法抛出异常而不是正常返回。
但是,我的 jms 配置为重试几次,直到 jms 交付最终成功。我的回调会收到所有失败的通知。
我想要的是一个仅在所有重试最终失败时才收到通知的侦听器。动机是提出问题以引起管理员的注意。但我不希望管理员控制台中出现虚假通知。
<bean abstract="true" id="abstractDestinationListener"
class="org.springframework.jms.listener.DefaultMessageListenerContainer">
<property name="connectionFactory" ref="jmsFactory" />
<property name="errorHandler" ref="destinationErrorHandler"/>
<property name="sessionTransacted" value="true"/>
</bean>