Mule ESB Flow在Calling SOAP Webservice中传递参数

时间:2018-02-13 13:59:15

标签: mule mule-studio anypoint-studio mule-esb

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

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

2 个答案:

答案 0 :(得分:0)

使用Webservice使用者并添加转换消息组件。通过这样做,您可以自动映射SOAP Web服务所需的所有参数,因为数据集将使用WSDL文件自动下载服务的元详细信息。

答案 1 :(得分:0)

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

    记录请求

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

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

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

    def userId = userSoapRequest.userId.text();

    message.setInvocationProperty(' userId',userId);

    6.像上面一样检索userId,并且类似地检查所有元素。 7.根据需要处理它们。

    希望这有帮助