Magento 1.6 Soap v2 属性和附加属性

发布于 2024-12-28 01:26:34 字数 446 浏览 1 评论 0原文

我正在使用 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

所以我既无法获取这些属性,也无法在产品上更新这些属性。

有没有人有想法来解决这个问题!

谢谢

I am working with Magento 1.6 and try to call the Soap API V2 to get product-information (attributes and additional attributes).

If use soapUI or try to generate a request in java to get information of the product and its additional attributes a new entry gets written to the system log, saying:

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

So I neither get those attributes nor can I update these on a product.

Does anybody have idea to come over this issue!

thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

风启觞 2025-01-04 01:26:34

好吧,我想通了!

该文件中似乎有一个“错误”!因此,如果您仅请求一个属性,则 array_merge() 函数无法连接该变量,因为 $attribute 变量不是数组。

尝试使用 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>

Well I figured it out!

There seems to be a "bug" in that file! So if you request only one attribute the array_merge() function can't join the variable because the $attribute variable is not an array.

Try to send multiple attributes with 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>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文