Spring JMS Publish / Susbcriber配置到IBM Webpshere MQ

时间:2016-12-15 22:55:26

标签: spring jms ibm-mq publish-subscribe

在Web上搜索我发现了很多关于如何为主动MQ的发布/订阅者模式配置spring(file.xml)的示例,但我需要如何为Websphere MQ配置bean 任何人都配置了两个产品成功吗?

1 个答案:

答案 0 :(得分:2)

以下是Websphere MQ ConnectionFactory的bean定义:

<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中,以便缓存会话,使用者和生产者,这个包装器也会将自动恢复切换为true:

<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一起使用。