如何在 Spring 集成中将字符串 属性 注入到 javax.jms.TextMessage
How to Inject String property to javax.jms.TextMessage in Spring Integration
我想知道在 Spring 集成中是否有任何方法可以向 JMS 文本消息添加属性。
例如,如果我们使用普通的 JMS 代码,我们总是可以使用以下代码为其设置属性。
message.setStringProperty( "AuctionType", "Reverse" );
编辑
我尝试添加 Spring 文档中给出的 header,但现在我得到的每条消息都具有相同的消息 ID,但由于我打算将其用作 ID,所以我需要每条消息都不同。
下面是我的 Spring 配置快照。
<bean class="com.learn.util.RandomMsgId" id="randomMsgId" factory-method="getRndMsgId" scope="prototype"/>
<int:header-enricher input-channel="xmlToJMS"
output-channel="xmltoJMSwithId">
<int:header name="MsgId" ref="randomMsgId"/>
</int:header-enricher>
使用 <header-enricher/>
将自定义 headers 添加到 spring 集成消息,它们将映射到 JMS headers。
见the documentation and here。
我想知道在 Spring 集成中是否有任何方法可以向 JMS 文本消息添加属性。
例如,如果我们使用普通的 JMS 代码,我们总是可以使用以下代码为其设置属性。
message.setStringProperty( "AuctionType", "Reverse" );
编辑
我尝试添加 Spring 文档中给出的 header,但现在我得到的每条消息都具有相同的消息 ID,但由于我打算将其用作 ID,所以我需要每条消息都不同。 下面是我的 Spring 配置快照。
<bean class="com.learn.util.RandomMsgId" id="randomMsgId" factory-method="getRndMsgId" scope="prototype"/>
<int:header-enricher input-channel="xmlToJMS"
output-channel="xmltoJMSwithId">
<int:header name="MsgId" ref="randomMsgId"/>
</int:header-enricher>
使用 <header-enricher/>
将自定义 headers 添加到 spring 集成消息,它们将映射到 JMS headers。
见the documentation and here。