Java spring中的会话存储集成和处理多个http出站网关

Java spring中的会话存储集成和处理多个http出站网关,java,spring,http,request,spring-integration,Java,Spring,Http,Request,Spring Integration,集成图的示例如下所示 HTTP入站网关以及GET参数,例如“dataValue” 调用两个独立的http出站网关 处理两个出站网关的响应 显示两个出站网关的结果响应以及传递的GET参数 我们有两个需求,一个是需要向两个http出站网关发送两个单独的请求,这两个网关提供两种不同类型的响应(一种是基本数据,另一种是价格数据)。我们如何将这两个结果聚合起来进行处理。是否需要使用特殊类型的聚合器、模式等 另一个要求是,因为我们有一个http入站网关,它调用上述两个http网关,处理这两个请求并生成jso

集成图的示例如下所示

  • HTTP入站网关以及GET参数,例如“dataValue”
  • 调用两个独立的http出站网关
  • 处理两个出站网关的响应
  • 显示两个出站网关的结果响应以及传递的GET参数
  • 我们有两个需求,一个是需要向两个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>
    
    
    
    Re。几个

    您可以将
    apply sequence=“true”
    -一起使用,最后
    对单个
    回复的响应正确分组

    为了获得更好的性能,您可以在
    中添加
    执行器,您的
    将被并行调用