Web services jboss fuse中使用cxf的web服务端点

Web services jboss fuse中使用cxf的web服务端点,web-services,jaxb,cxf,apache-camel,jbossfuse,Web Services,Jaxb,Cxf,Apache Camel,Jbossfuse,我正在使用jboss fuse 6.1-final: 以下是我的简单路线: <route> <from uri="cxf:bean:synchronousEndpoint"/> <log message="Service invoked." /> <process ref="simpleProcessor"/> </route> 下面是堆栈跟踪: Caused by: java.lang.ClassCastEx

我正在使用jboss fuse 6.1-final:

以下是我的简单路线:

<route>
    <from uri="cxf:bean:synchronousEndpoint"/>
    <log message="Service invoked." />
    <process ref="simpleProcessor"/>
</route>
下面是堆栈跟踪:

Caused by: java.lang.ClassCastException: java.lang.Object cannot be cast to org.w3c.dom.Element

有什么提示或建议吗?

如果没有看到来自simpleProcessor的更多代码,很难说。但是,您似乎使用了错误的dataFormat参数

cxf组件有一个dataFormat参数,该参数可以是以下任一参数:

  • POJO:POJO(普通旧Java对象)是 正在目标服务器上调用的方法。协议和逻辑 支持JAX-WS处理程序

  • 有效载荷:有效载荷是消息有效载荷(消息的内容) 在CXF端点中的消息配置完成后 应用仅支持协议JAX-WS处理程序。逻辑JAX-WS 不支持处理程序

  • 消息:消息是从服务器接收的原始消息 传输层。它不应该接触或改变流,一些 如果您使用这种类型的侦听器,则将删除CXF侦听器 DataFormat,以便在camel cxf之后看不到任何soap头 不支持使用者和JAX-WS处理程序

  • CXF_消息:Camel 2.8.2中新增了CXF_消息,允许调用 通过将消息从 将传输层转换为原始SOAP消息

默认值为POJO,这意味着在传递对象时,没有XML作为消息传递。我怀疑您可能试图将响应作为XML进行操作,这会导致问题

不久前,我遇到了类似的情况,当时我正试图通过在接收POJO时对XML执行XPATH查询来将POJO转换为XML

Caused by: java.lang.ClassCastException: java.lang.Object cannot be cast to org.w3c.dom.Element