Database Spring集成|和#xA0;使用HTTP出站网关时如何保留消息上下文?

Database Spring集成|和#xA0;使用HTTP出站网关时如何保留消息上下文?,database,rest,spring-integration,Database,Rest,Spring Integration,我需要将JSON结构发布到REST端点并处理它返回的数据(所有这些都是JSON) 为此,我计划使用HTTP出站网关。现在的问题是,在我将我的对象(消息的有效负载)转换成JSON格式之后,在我将其传输到端点之前,有效负载应该被丢弃到数据库中,以便在端点不可用的情况下,可以重试调用 如我所愿 a) 在呼叫后相应地设置状态` b) 更新 具有来自REST端点的uuid的相应行 我需要以某种方式将我的对象(业务密钥)的uuid作为出站消息的一部分与放置在应答通道上的REST端点的响应相关联。由于我无法要

我需要将JSON结构发布到REST端点并处理它返回的数据(所有这些都是JSON)

为此,我计划使用HTTP出站网关。现在的问题是,在我将我的对象(消息的有效负载)转换成JSON格式之后,在我将其传输到端点之前,有效负载应该被丢弃到数据库中,以便在端点不可用的情况下,可以重试调用

如我所愿 a) 在呼叫后相应地设置状态`
b) 更新 具有来自REST端点的uuid的相应行


我需要以某种方式将我的对象(业务密钥)的uuid作为出站消息的一部分与放置在应答通道上的REST端点的响应相关联。由于我无法要求提供商将我的uuid作为响应的一部分返回,我如何才能完全在客户端实现这一点?

您可以使用
请求处理程序建议链向出站端点添加自定义建议。只需子类
AbstractRequestHandlerAdvice
。它实际上是一个“环绕”建议,因此您可以在调用处理程序之前将其存储在数据库中,然后更新状态


具体地说

您可以将其存储在消息头中吗?AFAIK出站网关将消息头从放置在请求通道上的消息复制到放置在应答通道上的消息。或者您不想使用标题的原因是什么?