0

As of this error where I couldn't find a solution, I am trying to run call manually not using Magento plugin.

EDIT

Tried something like this:

<flow name="restorderSub_Flow">
    <http:inbound-endpoint exchange-pattern="request-response" host="localhost" port="8080" path="test"  doc:name="HTTP"/>
    <logger message="#[payload]" level="INFO" doc:name="Logger"/>
    <parse-template location="src/main/resources/login.xml" doc:name="Parse Template"/>
    <logger message="#[payload]" level="INFO" doc:name="Logger"/>
    <http:outbound-endpoint address="http://127.0.0.1:8000/api/v2_soap/?wsdl" method="POST" exchange-pattern="request-response" doc:name="HTTP"/>
</flow>

But it's just displaying the magneto endpoint in this case it;s the wsdl file??

Community
  • 1
  • 1
user2016
  • 153
  • 1
  • 5
  • 18

2 Answers2

0

Easiest way to try is using the Web Service Consumer connector, if you have the WSDL available.

https://docs.mulesoft.com/mule-user-guide/v/3.7/web-service-consumer

Pass in your arguments via DataWeave (when using EE) or via a Parse Template transformer when not using EE.

JoostD
  • 734
  • 6
  • 13
  • Can i pass more then one argument with this connector? I am getting this 'Warning: Operation Messages With More Than 1 Part Are Not Supported.' – user2016 Dec 15 '15 at 07:40
  • a part is different that an argument, if you are running EE use DataWeave in front of the Web Service Consumer connector – JoostD Dec 18 '15 at 09:21
  • I am running EE I tried using DataWeave in front of the Web Service Consumer, but it displays in the output only one argument (in this case is the session id), What wrong? – user2016 Dec 18 '15 at 10:13
  • I recommend reading the docs here: https://docs.mulesoft.com/mule-user-guide/v/3.7/web-service-consumer#configuring-web-service-consumer you specify an operation in the Web Service Consumer connector, so that operation only accept one argument? check with SOAP UI otherwise. – JoostD Dec 18 '15 at 11:05
  • Okay, It's my mistake! magneto wsdl uses parts and not argument as I wort above, So any other idea? – user2016 Dec 22 '15 at 07:34
0

You could use http connector to manually send a request. Here is a sample soap request in logging in to magento soap api.

<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:Magento">
<soapenv:Header/>
<soapenv:Body>
    <urn:login soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
        <username xsi:type="xsd:string">#[message.outboundProperties['magento.username']]</username>
        <apiKey xsi:type="xsd:string">#[message.outboundProperties['magento.password']]</apiKey>
    </urn:login>
</soapenv:Body>

Alex Fernandez
  • 1,892
  • 14
  • 17