DefaultMessageListenerContainer不使用Websphere MQ

时间:2009-11-17 11:50:40

标签: java spring jms ibm-mq spring-integration

我使用的是spring 2.5.6和spring-integration 1.0.3以及MQ client 6.0.2.2

我必须在消息驱动通道适配器中添加消息选择器,但现在我收到以下错误:

MQJMS2008: failed to open MQ queue ; nested exception is com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2085

当我使用ActiveMQ作为测试工具时,它可以工作。

我的配置:

<jms:message-driven-channel-adapter 
    id="jmsIn" 
    channel="inboundMessage" 
    container="myContainer"/>

<bean id="myContainer" 
    class="org.springframework.jms.listener.DefaultMessageListenerContainer">
    <property name="connectionFactory" ref="connectionFactory"/>
    <property name="destinationName" value="myQueue"/>
    <property name="messageSelector" ref="messageSelector"/>
    <property name="transactionManager" ref="txManager"/>
</bean>

如果我恢复到以前的配置,那一切都很好(除了我没有消息选择器!)

<jms:message-driven-channel-adapter 
    id="jmsIn" 
    destination="tradeQueue" 
    channel="inboundMessage" 
    transaction-manager="txManager"/>

1 个答案:

答案 0 :(得分:1)

阿!

我在哪里

<property name="destinationName" value="myQueue"/>

我应该有

<property name="destinationName" ref="myQueue"/>

Skaffman是对的,队列实际上并不存在。

P