1

我正在尝试在 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,但显然这还不够。有谁知道我做错了什么?

4

1 回答 1

1

显然,由于时钟同步问题,它无法正常工作。时钟现在同步,一切都按预期工作。

于 2015-11-05T20:07:40.527 回答