致命错误:未捕获的SoapFault异常:[103]属性“include_in_menu”是必需的

时间:2011-08-06 05:09:04

标签: magento

“致命错误:未捕获的SoapFault异常:[103]属性”include_in_menu“是必需的。”当我使用Magento API创建一个类别时,我被抛弃了。

在Magento API中,它说我需要一个这样的数组,

         array(
            'name'=>'Newopenerp',
            'is_active'=>1,
            'include_in_menu'=>2,
            'available_sort_by'=>'position',
            'default_sort_by'=>'position'
           )

当我使用Magento 1.5.1在localhost中运行我的脚本时,一切看起来都很好。在使用Magento 1.5.0的服务器中,抛出了此异常。我想知道这是否是由版本更改引起的。

我尽力调试,一天之后什么也没得到。我确保这是Magento API的问题,也许Magento 1.5.0中有另一种“include_in_menu”数据类型。

我真的想知道这里发生了什么!

PS: 我在http://sourceforge.net/projects/jtlmage/forums/forum/1009350/topic/4028894获得了一些有用的信息。但它不是英文,所以我无法得到它的含义。希望它对任何人的帮助都有帮助!

提前致谢。

2 个答案:

答案 0 :(得分:2)

include_in_menu不应该是布尔值,因此10

答案 1 :(得分:2)

请转到此路径“app/code/core/Mage/Catalog/etc/”,然后打开此文件“wsdl.xml”。然后转到第187行,您将找到Magento v1.5.0.1的以下代码块: -

<complexType name="catalogCategoryEntityCreate">
    <all>
        <element name="name" type="xsd:string" minOccurs="0" />
        <element name="is_active" type="xsd:int" minOccurs="0" />
        <element name="position" type="xsd:int" minOccurs="0" />
        <element name="available_sort_by" type="typens:ArrayOfString" minOccurs="0" />
        <element name="custom_design" type="xsd:string" minOccurs="0" />
        <element name="custom_design_apply" type="xsd:int" minOccurs="0" />
        <element name="custom_design_from" type="xsd:string" minOccurs="0" />
        <element name="custom_design_to" type="xsd:string" minOccurs="0" />
        <element name="custom_layout_update" type="xsd:string" minOccurs="0" />
        <element name="default_sort_by" type="xsd:string" minOccurs="0" />
        <element name="description" type="xsd:string" minOccurs="0" />
        <element name="display_mode" type="xsd:string" minOccurs="0" />
        <element name="is_anchor" type="xsd:int" minOccurs="0" />
        <element name="landing_page" type="xsd:int" minOccurs="0" />
        <element name="meta_description" type="xsd:string" minOccurs="0" />
        <element name="meta_keywords" type="xsd:string" minOccurs="0" />
        <element name="meta_title" type="xsd:string" minOccurs="0" />
        <element name="page_layout" type="xsd:string" minOccurs="0" />
        <element name="url_key" type="xsd:string" minOccurs="0" />
    </all>
</complexType>

如果您遵循所有元素,您将能够知道所需的所有属性/元素。

至于你的问题,你是对的,在Magento v1.5.1.0中,元素“include_in_menu”出现在同一属性中。但是,Magento v1.5.0.1在“wsdl.xml”文件中没有任何此类元素,您需要从数组元素列表中删除此元素。

另外,我想告诉您,我不建议您在“complexType”数据中添加此元素,因为这意味着您在核心&amp;当你对Magento核心进行任何升级时,这只会妨碍你的Magento。

希望它有所帮助。