Exchange邮件标题格式的设置代码
来源:爱站网时间:2022-04-22编辑:网友分享
来给大家说说看Exchange邮件标题格式的设置代码是怎么样的,你如果对这方面想详细了解清楚的话,不妨在接下来的时间看看爱站技术频道小编所整理的资料吧!
问题描述
我正在尝试设置交换消息头。在格式化代码时需要帮助。我需要在标题中设置以下值
usr.Person.Name = "Peter"
usr.Person.ID = "ABC123"
我尝试过
exchange.getIn().setHeader("usr.Person.Name", "Peter");
exchange.getIn().setHeader("usr.Person.ID", "ABC123");
但是当我在Active MQ中看到它的格式为
usr_DOT_Person_DOT_Name: Peter
usr_DOT_Person_DOT_ID : ABC123
我需要按原样打印,我尝试过用google搜索,但没有运气。有什么建议吗?
思路一:
在消息头/属性的名称中使用.
字符违反了JMS规范,因此似乎在途中某处已将其翻译以避免致命错误。阅读时,您始终可以将其转换回原始格式。
思路二:
从骆驼行动中
在Camel中,标题可以命名为适合Java的任何名称字符串,其值可以是任何Java对象。这提出了一些在JMS目标发送和接收时出现问题。
...任何句点(。)字符用DOT替换,并且所有连字符(-)都是替换为HYPHEN。例如,标题为org.apache.camel.Test-Header将被转换为org_DOT_apache_DOT_camel_DOT_Test_HYPHEN_Header,然后发送到JMS目的地。如果某个骆驼路线在某些时候消耗了此消息指向该行的下方,标题名称将被转换回。
此外,您也可以在MESSAGE HEADER MAPPING部分的https://camel.apache.org/components/latest/jms-component.html中找到此信息。
有关Exchange邮件标题格式的设置代码介绍,爱站技术频道小编今天就整理到这里了,想知道更多关于技术方面的咨询,可以关注或者收藏我们网站。