2012-03-19 13 views
2

私は、2つの異なるMagento Community 1.6.2インストールに対して 'catalogProductAttributeSetList'を呼び出しています。結果は異なる形式で返されます。Magento Community 1.6.2サーバからの異なる応答

サーバ1

WSDL:www.indo-pac.biz/api/v2_soap?wsdl=1 のphpinfo:www.indo-pac.biz/info.php

応答:

<SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"   xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:Magento" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
    <SOAP-ENV:Body> 
    <ns1:catalogProductAttributeSetListResponse> 
    <result SOAP-ENC:arrayType="ns1:catalogProductAttributeSetEntity[2]" xsi:type="ns1:catalogProductAttributeSetEntityArray"> 
     <item xsi:type="ns1:catalogProductAttributeSetEntity"> 
      <set_id xsi:type="xsd:int">9</set_id> 
      <name xsi:type="xsd:string">Cameras</name> 
     </item> 
     <item xsi:type="ns1:catalogProductAttributeSetEntity"> 
      <set_id xsi:type="xsd:int">4</set_id> 
      <name xsi:type="xsd:string">Default</name> 
     </item> 
    </result> 
    </ns1:catalogProductAttributeSetListResponse> 

**サーバ2 **

WSDL:http://magento.a-dot.co.uk/api/v2_soap?wsdl=1 のphpinfo:結果が異なる理由http://s33667.gridserver.com/gs-bin/phpinfo.php-stable

Response:

<?xml version="1.0" encoding="UTF-8"?> 
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"  xmlns:ns1="urn:Magento" xmlns:ns2="http://xml.apache.org/xml-soap" xmlns:SOAP- ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> 
    <SOAP-ENV:Body> 
<ns1:catalogProductAttributeSetListResponse> 
    <result SOAP-ENC:arrayType="ns2:Map[2]" xsi:type="ns1:catalogProductAttributeSetEntityArray"> 
     <item xsi:type="ns2:Map"> 
     <item> 
     <key xsi:type="xsd:string">set_id</key> 
     <value xsi:type="xsd:string">4</value> 
     </item> 
     <item> 
     <key xsi:type="xsd:string">name</key> 
     <value xsi:type="xsd:string">Default</value> 
     </item> 
    </item> 
    <item xsi:type="ns2:Map"> 
     <item> 
     <key xsi:type="xsd:string">set_id</key> 
     <value xsi:type="xsd:string">9</value> 
     </item> 
     <item> 
     <key xsi:type="xsd:string">name</key> 
     <value xsi:type="xsd:string">Ladies Shoes</value> 
     </item> 
    </item> 
    </result> 
</ns1:catalogProductAttributeSetListResponse> 

誰かが説明できますか?要求はまったく同じです。私はsoapUI 4.0.1を使用して送信された応答を確認しています(私もJavaを使って目撃しました)

私はサーバー上のSOAPライブラリの不一致を疑いますが、どのように検証できますか?

おかげ

答えて

2

Magentoのは、彼らのV2のSOAP APIの2つの異なるモードがあります。私の推測では、1台のサーバーが「WS-I」モードにあり、もう1台はWS-Iモードではありません。問題の店舗の管理者に設定を確認させてください

System -> Configuration -> Services -> Magento Core API -> WS-I Compliance 
+0

こんにちはAlan、私は既にチェックしています - 両方の店舗にはWS-I準拠がNO –

+1

に設定されていますさまざまな店舗設定レベルでもチェックしてください(つまり、それは数え切れないほどのものがあります)。 –

+0

@Alan - 2番目のサーバーの出力は** WS-I **モードに似ています。 –

1

WSI準拠を有効にすると、サーバー2からの応答が得られます。キャッシュを更新してください。サーバ2上でMage :: getStoreConfig( 'api/config/compalince_wsi')を呼び出して、何を返すかを再確認することができます。 CE 1.6.2のデータを確認し、WSI準拠を無効にして最初の応答を受信し、WSI準拠を有効にして2番目の応答を受信しました。

関連する問題