继续在Spring Integration中发送消息

时间:2013-10-07 14:39:30

标签: spring-integration poller

一个模块每隔N秒向消息代理发送一条消息。另一个模块从代理接收消息。消息构建在服务激活器的方法sendMessage中。该计划是使用入站通道适配器(如答案中所示),但由于某些原因,此解决方案不起作用,我一直收到"在投票期间未收到任何消息,返回' false'"&#34 ;。这个配置有什么问题?

<int-jms:inbound-channel-adapter id="keepAlivePoller" channel="keepAliveChannel" destination="keepAlive" connection-factory="connectionFactory"> 
        <si:poller id="sendPoller"  fixed-rate="${keepalive.sendinterval}" max-messages-per-poll="1"></si:poller>
    </int-jms:inbound-channel-adapter>

    <si:service-activator input-channel="keepAliveChannel" method="sendMessage" ref="keepAliveSender"/>
    <bean class="com.foo.KeepAliveSender"/>

    <si:channel id="keepAliveChannel"/>

1 个答案:

答案 0 :(得分:0)

只有在&#34; keepAlive&#34;中有消息时才会发送消息。队列中。

你可以简单地使用......

<int:inbound-channel-adapter id="keepAlivePoller" channel="keepAliveChannel"
        expression="'foo'"> 
    <si:poller id="sendPoller"  fixed-rate="${keepalive.sendinterval}" />
</int:inbound-channel-adapter>

......根本不使用JMS。