我想使用java-dsl
来消息来自队列频道的消息,但Integrations.from
没有签名允许我指定一个轮询器。
我怎样才能做到这一点?
例:
@Bean
IntegrationFlow flow() {
return IntegrationFlows.from(this.channel())
.handle(...)
.get();
}
@Bean
MessageChannel channel() {
return MessageChannels.queue().get();
}
答案 0 :(得分:3)
嗯,实际上提供轮询属性是一个终端责任。
如果您熟悉XML配置,则应记住要从<queue>
进行投票,我们应为<poller>
等配置<service-activator>
子元素。
同样的方法也适用于Java DSL。下一个端点定义应该是所需的poller
:
IntegrationFlows.from(this.channel())
.handle(..., e -> e.poller(Pollers...))
.get();
答案 1 :(得分:0)
由于某种原因我在端点定义上设置轮询器时遇到了麻烦,因为Artem描述了 - 由于某种原因它被忽略了。您始终可以设置默认轮询器。这对我有用:
result = cursor.callfunc("pkgioexportora.request", cx_Oracle.NUMBER, [xml_stuff])