使用带有 Mule CE 的 Web 服务消费者

Using the Web Service Consumer with Mule CE

我正在迁移我的 cxf jaxws 客户端以使用新的 HTTP 连接器。骡子文档说要这样做:

<cxf:jaxws-client
     clientClass="org.apache.hello_world_soap_http.SOAPService"
     port="SoapPort"
     wsdlLocation="classpath:/wsdl/hello_world.wsdl"
     operation="greetMe"/>
<outbound-endpoint address="http://localhost:63081/services/greeter"/>

但这不是还在使用旧的 http 实现吗?

接下来我尝试将其转换为使用 Web 服务消费者。我见过的所有示例都使用 DataMapper,但这不适用于 Mule CE。

如果没有 DataMapper,当 运行 我的应用程序出现以下错误时:

为转换器 "JAXBMarshallerTransformer" (org.mule.api.transformer.TransformerException) 指定了无效的 return 类型 "interface javax.xml.stream.XMLStreamReader" 在 org.mule.module.xml.transformer.jaxb.JAXBMarshallerTransformer.doTransform(JAXBMarshallerTransformer.java:125)

Web 服务消费者是否打算仅与 DataMapper 一起使用?在没有 DataMapper 的情况下如何使用它?如果不是 jaxb 对象,我应该向 Web 服务消费者发送什么类型的对象?

有没有办法在新的 http 请求配置中使用 cxf jaxws-client?

谢谢。

将 JAXB 对象转换为字符串解决了错误。