1. 程式人生 > >記錄一份spring 連線tibco不能重連問題

記錄一份spring 連線tibco不能重連問題

使用spring jms連線tibco佇列,在佇列重啟之後連線不上佇列,必須重啟才能解決,後修改配置屬性就能收到了,下面是修改後的配置檔案,用來remark一下。

修改點

主要是添加了這個屬性
<property name="cacheLevelName" value="CACHE_SESSION" />

完整版

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:dubbo="http://code.alibabatech.com/schema/dubbo" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd">
<!-- 設定tibco 連線地址 --> <bean id="targetConnectionFactory" class="com.tibco.tibjms.TibjmsConnectionFactory"> <property name="serverUrl" value="${tibco_url}" /> </bean> <!-- 設定使用者名稱密碼 --> <bean id="connectionFactory" class="org.springframework.jms.connection.UserCredentialsConnectionFactoryAdapter"
>
<property name="targetConnectionFactory" ref="targetConnectionFactory" /> <property name="username" value="${tibco_userName}" /> <property name="password" value="${tibco_pwd}" /> </bean> <!-- 把jms設定成多例模式 方便取出jmsTempLate 只需要設定佇列名字收發即可 scope="prototype" --> <bean id="jmsTemplate" class="org.springframework.jms.core.JmsTemplate" scope="prototype"> <property name="connectionFactory" ref="connectionFactory" /> </bean> <!-- 設定佇列監聽名稱 --> <bean id="queueDestination" class="com.tibco.tibjms.TibjmsQueue"> <constructor-arg value="${tibco_payserver_in}" /> </bean> <!-- 設定佇列監聽 --> <bean id="consumerMessageListener" class="com.imobpay.base.services.ConsumerMessageListener"> <property name="sendTibcoOutName" value="${tibco_payserver_out}" /> <property name="flagReturn" value="${flagReturn}" /> </bean> <!-- 啟動jms監聽容器 --> <bean id="jmsContainer" class="org.springframework.jms.listener.DefaultMessageListenerContainer"> <property name="connectionFactory" ref="connectionFactory" /> <property name="destination" ref="queueDestination" /> <property name="messageListener" ref="consumerMessageListener" /> <property name="cacheLevelName" value="CACHE_SESSION" /> </bean> </beans>