如何使用Web服务使用者将值传递给SOAP服务?

时间:2014-12-31 07:37:53

标签: mule mule-studio mule-component

您好我有一个soap服务,其中一个方法将接收2个输入值并给出一个bool O / P. 我正在使用Web服务使用者端点来使用此soap服务。我想了解我可以将值发送到SOAP服务的方式。

`<ws:consumer-config name="Web_Service_Consumer" wsdlLocation="http://.....?singleWsdl" service="ClientService" port="WSHttpBinding_IClientService" serviceAddress="http://....../ClientService.svc" doc:name="Web Service Consumer"/>
<ws:consumer config-ref="Web_Service_Consumer" operation="AuthenticateUser" doc:name="Web Service Consumer"/>

4 个答案:

答案 0 :(得分:3)

Web服务使用者非常谨慎地与DataMapper一起使用,数据处理器几乎可以直观地为您构建请求。鉴于DataMapper是一个EE功能,你没有提到你有许可证,我建议你改变方法,而不是使用CXF module

答案 1 :(得分:1)

请详细了解 ws:消费者: - http://www.mulesoft.org/documentation/display/current/Web+Service+Consumer+Referencehttp://www.mulesoft.org/documentation/display/current/Web+Service+Consumer github中还有一个例子: - https://github.com/mulesoft/mule-tooling-examples/blob/master/web-service-consumer/src/main/app/tshirt-service-consumer.xml

您可以使用<stdio:inbound-endpoint system="IN" doc:name="STDIO"/>将值传递给服务..但我不确定这是否是推荐的方法.. 另一个选项是 set-payload ,您可以尝试将值传递给服务

答案 2 :(得分:1)

基于Web服务使用者documentation,使用者期望服务操作的xml请求。

我的快速建议是使用任何工具构建基于wsdl的 xml请求(例如 SOAP UI )并在设置中使用它有效载荷,使用MEL表达式注入两个参数值。

希望它有所帮助。

答案 3 :(得分:0)

您可以尝试使用此示例

  <ws:consumer-config name="Web_Service_Consumer" 
 
 
         wsdlLocation="somelocation_1.0.wsdl" 
 
 
         service="GreeterResponderService" port="GreeterResponderPort" 
 
 
         serviceAddress="http://user:password@localhost:8088/mockbinding" 
 
 
         doc:name="Web Service Consumer"/>