25.7. 发送时的消息格式
通过 JMS wire 发送的交换必须符合 JMS Message spec。
对于 exchange.in.header
,以下规则适用于标头 键 :
-
从
JMS
或JMSX
开头的密钥被保留。 -
exchange.in.headers
键必须是字面上的值,且它们都是有效的 Java 标识符(不要在键名称中使用点)。 -
在使用 JMS 消息时,Camel 会替换点 &连字符以及在使用 JMS 消息时反转
。
当 Camel 使用消息时,反转替换。
-
被 'HYPHEN' 替换,并在 Camel 使用消息时反转替换。
-
另请参阅 option
jmsKeyFormatStrategy
,它允许使用您自己的自定义策略来格式化密钥。
对于 exchange.in.header
,以下规则适用于标题 值 :
-
该值必须是原语或对应的计数器对象(如
Integer
、长、长
、字符字符
)。类型、字符串
、Sequence
、Date
、BigDecimal
和BigInteger
都转换为String()
表示。所有其他类型都将被丢弃。
如果 Camel 丢弃了给定标头值,则 Camel 将以类别 org.apache.camel.component.jms.JmsBinding
进行登录。例如:
2008-07-09 06:43:04,046 [main ] DEBUG JmsBinding - Ignoring non primitive header: order of class: org.apache.camel.component.jms.issues.DummyOrder with value: DummyOrder{orderId=333, itemId=4444, quantity=2}