Web Service Consumer Connector in Mule





Web Service Consumer Connector in Mule


Web Service Consumer is used to consume SOAP webservice in Mule.

flow of Web Service Consumer in Mule :




wsdl file you can get form here :  http://mu.learn.mulesoft.com/delta?wsdl

for consuming soap web service we need to give wsdl file path in web service consumer.

wsdl file is stored in src/main/resources





Web service consumer configuration  :




click on +
give wsdl location.
Service,port & address will automatically popup from wsdl file.
click ok.



In Transform Message meta data is automatically popup from web service consumer connector once it reads wsdl file.



Write dataweave logic for taking query parameter









URL : http://localhost:8085/api/soapconsume?code=pune
Method : GET

XML project code :



<?xml version="1.0" encoding="UTF-8"?>

<mule xmlns:tracking="http://www.mulesoft.org/schema/mule/ee/tracking" xmlns:dw="http://www.mulesoft.org/schema/mule/ee/dw" xmlns:db="http://www.mulesoft.org/schema/mule/db" xmlns:ws="http://www.mulesoft.org/schema/mule/ws" xmlns:metadata="http://www.mulesoft.org/schema/mule/metadata" xmlns:http="http://www.mulesoft.org/schema/mule/http" xmlns:mulexml="http://www.mulesoft.org/schema/mule/xml" xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
xmlns:spring="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-current.xsd
http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/db http://www.mulesoft.org/schema/mule/db/current/mule-db.xsd
http://www.mulesoft.org/schema/mule/ws http://www.mulesoft.org/schema/mule/ws/current/mule-ws.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/xml http://www.mulesoft.org/schema/mule/xml/current/mule-xml.xsd
http://www.mulesoft.org/schema/mule/ee/dw http://www.mulesoft.org/schema/mule/ee/dw/current/dw.xsd
http://www.mulesoft.org/schema/mule/ee/tracking http://www.mulesoft.org/schema/mule/ee/tracking/current/mule-tracking-ee.xsd">
    <http:listener-config name="HTTP_Listener_Configuration" host="0.0.0.0" port="8085" basePath="/api" doc:name="HTTP Listener Configuration"/>
    <ws:consumer-config name="Web_Service_Consumer" wsdlLocation="soap.wsdl" service="TicketServiceService" port="TicketServicePort" serviceAddress="http://mu.mulesoft-training.com/essentials/delta" doc:name="Web Service Consumer"/>
    <flow name="test_webserviceconsumer">
        <http:listener config-ref="HTTP_Listener_Configuration" path="/soapconsume" doc:name="HTTP"/>
        <dw:transform-message doc:name="Transform Message" metadata:id="5c6d23ad-7859-4083-a8e3-753fad1c3f0a">
            <dw:input-payload/>
            <dw:set-payload><![CDATA[%dw 1.0
%output application/xml
---
{
allFlights : inboundProperties.'http.query.params'.code
}
]]></dw:set-payload>
        </dw:transform-message>
        <ws:consumer config-ref="Web_Service_Consumer" operation="listAllFlights" doc:name="Web Service Consumer"/>

    </flow>

</mule>