问题描述
我正在使用GET-PRODUCT OPERATION通过m子中的磁电机连接器从磁电机中获取产品信息,但是却出现此错误:Product not exists
即使通过SOAP UI进行了测试并且运行正常.经过长时间的搜索,我发现了这个问题:
I am trying to get product info from magneto via magneto connector in mule USING GET-PRODUCT OPERATION, but I am getting this error: Product not exists
even though tested via SOAP UI and worked perfectly.After a long search I have found the issue:
- 通过SOAP UI的
-
请求:
request via SOAP UI:
<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" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
<soapenv:Header/>
<soapenv:Body>
<urn:catalogProductInfo soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<sessionId xsi:type="xsd:string"/>
<productId xsi:type="xsd:string"/>
<storeView xsi:type="xsd:string"></storeView>
<attributes xsi:type="urn:catalogProductRequestAttributes">
<attributes xsi:type="urn:ArrayOfString" soapenc:arrayType="xsd:string[]">
</attributes>
<additional_attributes xsi:type="urn:ArrayOfString" soapenc:arrayType="xsd:string[]">
</additional_attributes>
</attributes>
<identifierType xsi:type="xsd:string"/>
</urn:catalogProductInfo>
</soapenv:Body>
</soapenv:Envelope>
通过磁电机连接器的请求:
request via magneto connector:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns1:catalogProductInfo xmlns:ns1="urn:Magento" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<sessionId xsi:type="xsd:string"></sessionId>
<product xsi:type="xsd:string"></product>
<storeView xsi:type="xsd:string" xsi:nil="true"/>
<attributes href="#id0"/>
<productIdentifierType xsi:type="xsd:string"></productIdentifierType>
</ns1:catalogProductInfo>
<multiRef xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns2="urn:Magento" id="id0" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns2:catalogProductRequestAttributes">
<attributes soapenc:arrayType="xsd:string[1]" xsi:type="soapenc:Array">
<attributes xsi:type="xsd:string"></attributes>
</attributes>
<additional_attributes soapenc:arrayType="xsd:string[0]" xsi:type="soapenc:Array"/>
</multiRef>
</soapenv:Body>
</soapenv:Envelope>
区别在于<product>/<productId>
标记.
关于如何解决的任何想法?
Any ideas on how to fix?
推荐答案
发现了问题:它位于magento连接器文件的magento_v2_soap.wsdl中,需要在catalogProductInfoRequest
中将<part name="product" type="xsd:string"/>
更改为<part name="productId" type="xsd:string"/>
我已经在 gitHub 中进行了更改,但是我没有写权限...所以我该怎么办?我所做的更改是下载并安装在installed子中.
Found the issue: it's in the magento_v2_soap.wsdl of the magento connector file where in the catalogProductInfoRequest
the <part name="product" type="xsd:string"/>
needs to be changed to <part name="productId" type="xsd:string"/>
I have made the change in gitHub but I don't have write access... so what I did is I made the change downloaded and installed in mule.
这篇关于Mule:Magento连接器:获取产品操作错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!