如何配置spring integration consumer来实现事件驱动?

时间:2012-11-13 08:25:44

标签: java spring jms publish-subscribe spring-integration

如何配置spring集成以使用消息驱动的使用者。 通过以下配置,我的消费者正在查询消息,我无法弄清楚如何使事件驱动而不是轮询..

 <bean id="dataQueue" class="org.apache.activemq.command.ActiveMQQueue">
        <constructor-arg name="name" value="${jms.data.queue.name}" />
    </bean>

    <jms:message-driven-channel-adapter channel="dataInputChannel" destination="dataQueue"  />
    <int:channel id="dataInputChannel" />    
    <int:channel id="persistDataChannel" />
    <int:channel id="processDataChannel" />

    <int:recipient-list-router id="customRouter" input-channel="dataInputChannel" timeout="10000" ignore-send-failures="true" apply-sequence="true">
        <int:recipient channel="persistDataChannel"/>
        <int:recipient channel="processDataChannel"/>
    </int:recipient-list-router> 

1 个答案:

答案 0 :(得分:1)

我不确定你的意思;它事件驱动的。线程阻塞客户端库的代码,直到消息到达或发生接收超时。如果您担心底层侦听器容器在TRACE调试下看到的活动,只需增加其receiveTimeout。