Spring integration jms入站网关应答是否可以包括消息序列的所有消息

Spring integration jms入站网关应答是否可以包括消息序列的所有消息,spring-integration,Spring Integration,我有一个jms入站网关,它读取来自WebsphereMQ代理的请求,并通过我的集成系统传递它们,该系统返回一个消息序列作为应答 消息序列是通过对集合应用拆分器获得的。它生成63条消息,如日志所示 问题是WebsphereMQ代理只接收最后一条消息。我不知道其他62条信息去了哪里 是因为jms入站网关无法回复消息序列吗?正确;网关用于简单的请求/应答场景 然而,我希望第一条信息,而不是最后一条信息是回复 要为单个回复返回多条消息,您可以将它们聚合为一条消息,或者为入站使用消息驱动的通道适配器,为“

我有一个jms入站网关,它读取来自WebsphereMQ代理的请求,并通过我的集成系统传递它们,该系统返回一个消息序列作为应答

消息序列是通过对集合应用拆分器获得的。它生成63条消息,如日志所示

问题是WebsphereMQ代理只接收最后一条消息。我不知道其他62条信息去了哪里


是因为jms入站网关无法回复消息序列吗?

正确;网关用于简单的请求/应答场景

然而,我希望第一条信息,而不是最后一条信息是回复

要为单个回复返回多条消息,您可以将它们聚合为一条消息,或者为入站使用
消息驱动的通道适配器
,为“回复”序列使用
出站通道适配器

编辑

当网关接收到对请求的多个响应时,返回的响应取决于流的拓扑结构。使用完全同步的流(
DirectChannel
s),将返回最后一条消息。对于异步流(
QueueChannel
s或流中的
ExecutorChannel
s),它很可能是第一个,但存在竞争条件


底线是网关只需要一个回复,而向一个请求发送多个回复不会产生预期的行为。

谢谢Gary。像往常一样,你帮了大忙。我验证了返回消息的标题:sequenceSize=63和sequenceNumber=63。谢谢;我做了一些测试并编辑了答案。