-1

我在 MuleESB 中创建了一个流,它调用一个没有任何参数的 Web 服务,只是在一个属性中发送它的用户名、密码和令牌,它工作正常。

但是第二个API我想在调用soap请求时发布一些参数但我不知道如何使用它我试图通过set payload但没有响应。

4

2 回答 2

0
  1. 确保在 Postman 或 SOAP UI 中选择 application/xml 作为内容类型,然后选择 POST。使用 CXF 并选择 Operation as Proxy Service ,提供详细信息。选择和提供(WSDL,启用 MTOM,SOAP 标头,SOAP 1.2)
  2. 确保在允许的方法中发布 XML 请求“POST”方法。
  3. 使用 2 个变压器。XML 到 DOM 和 DOM 到 XML。
  4. 使用记录请求

    #[message.payloadAs(java.lang.String)]

  5. 使用 groovy 脚本转换器来检索整个有效负载。

def userSoapRequest = new XmlSlurper().parseText(payload);

def userId = userSoapRequest.userId.text();

message.setInvocationProperty('userId', userId);

6.Retrieve userId 像上面一样,对于所有元素也是如此。7.根据需要处理它们。

希望这可以帮助

于 2018-03-13T14:24:41.030 回答
0

使用 Web 服务消费者并在它之前添加一个转换消息组件。通过这样做,您可以自动映射 SOAP Web 服务所需的所有参数,因为 datasence 将使用 WSDL 文件自动下载服务的元数据。

于 2018-03-13T06:17:08.390 回答