26.7. 发送时的消息格式


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

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

  • JMSJMSX 开头的密钥被保留。
  • Exchange.in.headers 键必须为 literals,并且所有有效 Java 标识符都必须是有效的 Java 标识符(请勿使用键名称中的句点)。
  • Camel 在消耗 JMS 消息时替换句点和连字符,在 Camel 使用消息时被 'DOT' 替代,并在 Camel 使用消息时替换反向替换。
    -'HYPHEN' 替换,并在 Camel 消耗消息时替换反向替换。
  • 另请参阅 jmsKeyFormatStrategy 选项,该选项允许使用您自己的自定义策略来格式化密钥。

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

  • 该值必须是原语或其计数器对象(如 IntegerLongCharacter)。类型、字符串CharSequenceDateBigDecimalBigInteger 都转换为其 toString () 表示。所有其他类型都被丢弃。

如果 Camel 丢弃给定的标头值,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}
Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat