我有2位监听者,他们分别通过不同的消息选择器来监听一个主题。
我想使用subscriptionShared
机制。
如果一条消息仅由1个消息选择器匹配,会发生什么?我可以确定收到的消息能够纠正消费者吗?
我使用:
这是我的Spring配置:
<bean id="messageListener1" class="jms.SampleListener1"/>
<bean id="messageListener2" class="jms.SampleListener2"/>
<bean id="jmsContainer1" class="org.springframework.jms.listener.DefaultMessageListenerContainer">
<property name="connectionFactory" ref="connectionFactory"/>
<property name="destinationName" value="messageTopic"/>
<property name="pubSubDomain" value="true" />
<property name="messageListener" ref="messageListener1" />
<property name="messageSelector" value="header1 = 'x'"/>
<property name="subscriptionShared" value="true"/>
<property name="subscriptionDurable" value="true"/>
</bean>
<bean id="jmsContainer2" class="org.springframework.jms.listener.DefaultMessageListenerContainer">
<property name="connectionFactory" ref="connectionFactory"/>
<property name="destinationName" value="messageTopic"/>
<property name="pubSubDomain" value="true" />
<property name="messageListener" ref="messageListener2" />
<property name="messageSelector" value="header2 LIKE 'y'"/>
<property name="subscriptionShared" value="true"/>
<property name="subscriptionDurable" value="true"/>
</bean>