Spring Integration - 在发布xml有效内容后使用原始有效内容

时间:2015-02-11 16:29:39

标签: spring-integration

我正在学习SI 3.0。有一个流将原始有效负载转换为XML字符串,然后在队列中发布。在队列上成功发布后,需要将一些必需的信息保留到数据库中。所以我需要检索原始有效负载并保持不变。我可以用来存储对象。在这种情况下,最好的方法是使用它来保存数据。

<int:chain input-channel="inceptionProcessorChannel">
    <int:transformer expression="payload.sbl"/>
    <int:transformer ref="sblOutputTranslator" method="convert"/>
    <int:transformer ref="sblToXml" method="doTransform"/>
</int:chain>

我不想将有效负载存储在标头中,因为它是一个沉重的对象。

提前致谢,

1 个答案:

答案 0 :(得分:0)

它只是一个参考,所以我不确定你为什么担心将它保留为标题(除非你持久留言或通过网络传输它)。

添加

<int:header-enricher>
    <int:header name="saveIt" expression="payload" />
</int:header-enricher>

到您的连锁店。

您可以将其存储在其他位置(例如,通过调用服务激活器)并稍后检索它,但它在功能上(和内存方式)与在标头中保留对原始有效负载的引用没有什么不同。 / p>