51.20. 发送 InOnly 消息并保留 JMSReplyTo 标头
使用 camel-jms 发送到 JMS 目的地时,生成者将使用 MEP 来检测其 InOnly 或 InOut 消息传递。但是,在某些情况下,您可能要发送 InOnly 消息,但保留 JMSReplyTo
标头。为此,您必须指示 Camel 保留它,否则将丢弃 JMSReplyTo
标头。
例如,要将 InOnly 消息发送到 foo 队列,但带有 bar 队列的 JMSReplyTo
,您可以执行以下操作:
template.send("activemq:queue:foo?preserveMessageQos=true", new Processor() { public void process(Exchange exchange) throws Exception { exchange.getIn().setBody("World"); exchange.getIn().setHeader("JMSReplyTo", "bar"); } });
请注意,我们使用 preserveMessageQos=true
来指示 Camel 保留 JMSReplyTo
标头。