我正在使用Magento 1.6并尝试调用Soap API V2来获取产品信息(属性和其他属性)。
如果使用soapUI或尝试在java中生成请求以获取产品及其附加属性的信息,则会将新条目写入系统日志,并说:
2012-01-20T08:33:04+00:00 DEBUG (7): array_merge() [<a href='function.array merge'>function.array-merge</a>]: Argument #2 is not an array/opt/website/magento/app/code/core/Mage/Catalog/Model/Product/Api/V2.php
所以我既没有得到这些属性也无法在产品上更新这些属性。
有没有人有想法来解决这个问题!
谢谢
答案 0 :(得分:3)
好吧我明白了!
该文件中似乎存在“错误”!因此,如果只请求一个属性,则array_merge()函数无法连接变量,因为$属性变量不是数组。
尝试使用soaoUI发送多个属性:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:Magento">
<soapenv:Header/>
<soapenv:Body>
<urn:catalogProductInfoRequestParam>
<sessionId>b595ed396f1901142cb284e4c280df82</sessionId>
<productId>7271</productId>
<!--Optional:-->
<store>0</store>
<!--Optional:-->
<attributes>
<additional_attributes>
<complexObjectArray>atribute</complexObjectArray>
<complexObjectArray>atribute</complexObjectArray>
<complexObjectArray>atribute</complexObjectArray>
<complexObjectArray>atribute</complexObjectArray>
<complexObjectArray>atribute</complexObjectArray>
</additional_attributes>
</attributes>
<!--Optional:-->
<identifierType/>
</urn:catalogProductInfoRequestParam>
</soapenv:Body>
</soapenv:Envelope>