使用 subscriptionShared 和 subscriptionDurable 创建 DefaultMessageListenerContainer
Make DefaultMessageListenerContainer with subscriptionShared and subscriptionDurable
我想在 DefaultMessageListenerContainer
中使用 subscriptionShared
和 subscriptionDurable
,因为在所有消费者之间共享持久订阅。
Tomcat 开始后,我多次看到此日志消息,看来我的主题有问题:
Setup of JMS message listener invoker failed for destination x.y.z trying to recover. cause:org.apache.activemq.ActiveMQSession.createSharedDurableConsumer (Ljavax/jms/Topic;Ljava/lang/String;)Ljavax/jms/MessageConsumer"
我的 Spring 版本是 4.3.8
。我使用 ActiveMQ Artemis 2.9.0
和 JMS 2.0
.
根据错误消息包含 org.apache.activemq.ActiveMQSession
的事实,我认为您正在使用来自 ActiveMQ 5.x 的 OpenWire JMS 客户端。此 JMS 客户端不支持 JMS 2.0,因此不支持共享持久订阅。您需要使用 ActiveMQ Artemis 的 JMS 客户端。
我想在 DefaultMessageListenerContainer
中使用 subscriptionShared
和 subscriptionDurable
,因为在所有消费者之间共享持久订阅。
Tomcat 开始后,我多次看到此日志消息,看来我的主题有问题:
Setup of JMS message listener invoker failed for destination x.y.z trying to recover. cause:org.apache.activemq.ActiveMQSession.createSharedDurableConsumer (Ljavax/jms/Topic;Ljava/lang/String;)Ljavax/jms/MessageConsumer"
我的 Spring 版本是 4.3.8
。我使用 ActiveMQ Artemis 2.9.0
和 JMS 2.0
.
根据错误消息包含 org.apache.activemq.ActiveMQSession
的事实,我认为您正在使用来自 ActiveMQ 5.x 的 OpenWire JMS 客户端。此 JMS 客户端不支持 JMS 2.0,因此不支持共享持久订阅。您需要使用 ActiveMQ Artemis 的 JMS 客户端。