![](/img/trans.png)
[英]Spring Integration with multiple http outbound gateway does not clear the header
[英]Session storage in spring integration and processing multiple http outbound gateways
集成图的示例如下
我们有两个要求,一个需要向两个http出站网关发送两个单独的请求,这两个网关提供两种不同类型的响应(一个带有基础数据,一个带有价格数据)。 我们如何汇总这两个结果进行处理。 是否有需要使用的特殊类型的聚合器,模式等
另一个要求是,因为我们有一个http入站网关,该网关调用上述两个http网关,处理两个请求并生成json输出。 在到http入站网关的请求中,可能传递了一个名为“ dataValue”的GET参数,其中包含值“ 17”。 处理完两个http出站网关响应后,请求完成后,必须将“ dataValue”参数和作为GET参数传递的值附加到响应中。 什么是存储和还原每个特定请求的“ dataValue”参数并将其附加到响应的最佳方法。 我们可以将其通过另一个渠道传递给最终响应的聚合器,还是可以针对每种请求和此类技术将其存储在会话存储中。
问候,米林达
对不起,我的答复很晚(不确定我是怎么想念您的问题),无论如何,我希望答案会有所帮助。
关于dataValue
GET请求参数:
您可以将其填充到消息标题:
<int-http:inbound-gateway path="/myPath?dataValue={dataValue}"
request-channel="processChannel">
<int-http:header name="dataValue" expression="#requestParams.dataValue"/>
</int-http:inbound-gateway>
回覆。 几个<int-http:outbound-gateway>
:
您可以将<publish-subscribe-channel>
与apply-sequence="true"
-最后, <aggregator>
将对单个reply
正确group
。
为了获得更好的性能,您可以将executor
添加到该<publish-subscribe-channel>
,并且您的<int-http:outbound-gateway>
将会被并行调用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.