2016-12-15 68 views

回答

1

下面是bean定义一个的WebSphere MQ ConnectionFactory

<bean id="wmqConnectionFactory" class="com.ibm.mq.jms.MQConnectionFactory"> 
    <property name="queueManager"> 
     <value>QUEUE_MANAGER</value> 
    </property> 
    <property name="hostName"> 
     <value>127.0.0.1</value> 
    </property> 
    <property name="port"> 
     <value>1414</value> 
    </property> 
    <property name="transportType"> 
     <value>1</value> 
    </property> 
    <property name="channel"> 
     <value>SYSTEM.DEF.SVRCONN</value> 
    </property> 
</bean> 

您可能需要提供用户名和密码,就可以实现这个目标通过在UserCredentialsConnectionFactoryAdapter包裹它:

<bean id="userCredentialsAdapter" class="org.springframework.jms.connection.UserCredentialsConnectionFactoryAdapter"> 
    <property name="targetConnectionFactory" ref="wmqConnectionFactory" /> 
    <property name="username" value=" " /> 
    <property name="password" value=" " /> 
</bean> 

将它包装在CachingConnectionFactory中以便会话,消费者和生产者被缓存也是一个好主意,这个包装也将自动恢复切换为真:

<bean id="cachingConnectionFactory" class="org.springframework.jms.connection.CachingConnectionFactory"> 
    <property name="targetConnectionFactory" ref="userCredentialsAdapter"/> 
    <property name="cacheConsumers" value="true" /> 
    <property name="cacheProducers" value="true" /> 
    <property name="sessionCacheSize" value="10" /> 
</bean> 

使用此配置,您可以使用cachingConnectionFactory以及任何您需要的bean。