28.7. 发送时的消息格式


通过 JMS 有线发送的交换必须符合 JMS 消息规格。

对于 exchange.in.header,以下规则适用于标头 键 :

  • 从 JMS 或 JMSX 开头的密钥将被保留。
  • exchange.in.headers 键必须是字面数,并且全部都是有效的 Java 标识符(不要在密钥名称中使用点)。
  • Camel 在消耗 JMS 消息时替换句点和连字符,在 Camel 使用消息时被 'DOT' 替代,并在 Camel 使用消息时替换反向替换。
    - 被 'HYPHEN' 替换,并在 Camel 消耗消息时替换反向替换。
  • 另请参阅 jmsKeyFormatStrategy 选项,该选项允许使用您自己的自定义策略进行格式化密钥。

对于 exchange.in.header,以下规则适用于 标头值 :

  • 值必须是 primitives 或其计数器对象(如 Integer、Long、Character)。类型、字符串、CharSequence、日期、MuterDecimal 和 BigInteger 都转换为其 toString () 表示。所有其他类型都会丢弃。

如果它丢弃给定标头值,Camel 会在 DEBUG 级别使用类别 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}
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部