Two years on I saw the same thing, that Spring's JMSTemplate seems to ignore
non-persistent delivery configuration, and always sends as persistent.
Tracing through JMSTemplate it turns out that deliveryMode, priority, and
timeToLive are ignored during send() unless "explicit QOS" is enabled, ie.
jmsTemplate.setExplicitQosEnabled(true). Or alternatively the equivalent in
the Spring app context:

        <bean id="jmsTemplate" class="org.springframework.jms.core.JmsTemplate">
                <property name="connectionFactory">
                        <ref local="jmsFactory"/>
                </property>
                <property name="pubSubDomain" value="true"/>
                <property name="deliveryPersistent" value="false"/>
                <property name="deliveryMode" value="1"/>
                <property name="explicitQosEnabled" value="true"/>
        </bean>

I'm sure the OP found the same thing out years ago, but just for anyone else
with the same problem.



--
View this message in context: 
http://activemq.2283324.n4.nabble.com/Non-persistent-deliverymode-not-effect-tp4680457p4714981.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to