我正在尝试在JmsTemplate上设置TTL,但消息永不过期。当我使用ActiveMQ Web控制台在消息上设置TTL时,它会在设置的时间段后过期。
这就是我现在所拥有的:
<bean id="shortTtlJmsTemplate" class="org.springframework.jms.core.JmsTemplate">
<constructor-arg ref="jmsConnectionFactory"/>
<property name="explicitQosEnabled" value="true"/>
<property name="deliveryPersistent" value="false"/>
<property name="receiveTimeout" value="10000"/>
<property name="timeToLive" value="10000"/>
</bean>
<bean id="shortTtlJmsMessagingTemplate" class="org.springframework.jms.core.JmsMessagingTemplate">
<constructor-arg ref="shortTtlJmsTemplate"/>
</bean>
文档只说我必须将 explicitQosEnabled 设置为 true ,但显然这还不够。有谁知道我做错了什么?