【问题标题】:CXF: Difference between PAYLOAD and MESSAGE data formatsCXF:PAYLOAD 和 MESSAGE 数据格式之间的区别
【发布时间】:2026-01-28 05:45:02
【问题描述】:

我开始使用 Apache Camel 和 CXF。

在“cxf:cxfEndpoint”配置中,dataFormat = PAYLOAD和dataFormat = MESSAGE有什么区别?

我认为在这两种情况下都会将 org.apache.camel.component.cxf.CxfPayload 传递到 Camel Exchange,不是吗?

那么 MESSAGE 是否只是 PAYLOAD 的主体(-> PAYLOAD 没有标题和附件)?

【问题讨论】:

    标签: soap cxf apache-camel


    【解决方案1】:

    是的,你是对的。 CXF MESSAGE 模式不应用 SOAP 处理,只应用正文提取。 PAYLOAD 模式允许使用标题等。

    官方文档对这种情况比较清楚,参考:

    http://camel.apache.org/cxf.html#CXF-HowtogetandsetSOAPheadersinPAYLOADmode

    【讨论】:

    • 更重要的问题(对我而言)是:“我认为在这两种情况下都会将 org.apache.camel.component.cxf.CxfPayload 传递到 Camel Exchange,不是吗?”