2012-01-20 11 views
1

Magento 1.6を使用してSoap API V2を呼び出して、製品情報(属性と追加属性)を取得しようとしました。Magento 1.6 Soap 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

あなたはMagentoのから製品情報を取得するためのコードを示すことができましたか? –

答えて

3

よくわかりました。

このファイルには「バグ」があるようです。したがって、1つの属性のみを要求した場合、$ attribute変数は配列ではないため、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> 
+0

FABULOUS!これはちょうど私の時間の束を(既にこの1つに長い時間を費やして)保存されました....ありがとうトン! –

関連する問題