java - JmsTemplate has no send timeout -
i have working jms application ibm mq jars configuration , using spring
it works correct queue information , when give wrong queue information
it hung @
log.info("sending message"); jmstemplate.send(this.getdestination(), messagecreator ); //here i have log saying sending message , handling org.springframework.jmsexception , not throw.....i think hung @ point.
i not able find property jmstemplate send timeout , recieve timeout there...
here jmstemplate conf in app-context.xml (spring)
<bean id="jmstemplate" class="org.springframework.jms.core.jmstemplate102"> <property name="connectionfactory"> <ref bean="jmsqueueconnectionfactory" /> </property> <property name="destinationresolver"> <ref bean="jmsdestinationresolver" /> </property> <property name="pubsubdomain"> <value>false</value> </property> <property name="receivetimeout"> <value>20000</value> </property> and ibm mq conf -
<bean id="mqconnectionfactory" class="com.ibm.mq.jms.mqqueueconnectionfactory"> <property name="hostname"> <value>${queue_hostname}</value> </property> <property name="port"> <value>${queue_port}</value> </property> <property name="queuemanager"> <value>${queue_manager}</value> </property> <property name="channel"> <value>${queue_channel}</value> </property> <property name="transporttype"> <value>1</value> </property> </bean> i have set auto-acknowledge
this.jmstemplate.setsessionacknowledgemode(session.auto_acknowledge); so please tell me how have timeout on sending message throw jmsexception.
this non sense.
if attempt put message invalid queue, mq throws exception reason code 2085 (unknown object). there no timeout required. obviously, framework using has bug in it not catching thrown exception!!!
try same test using jms , mq, , see difference.
Comments
Post a Comment