2017-05-19 67 views
0

在我的itemtype中,我需要用EnumType聲明attribut。但它給了一個錯誤象下面如何用EnumType聲明屬性

hybris\bin\platform\resources\ant\antmacros.xml:795: 
    java.lang.ClassCastException: de.hybris.bootstrap.typesystem.YEnumType 
    cannot be cast to de.hybris.bootstrap.typesystem.YCollectionType 

這裏是我如何申報

<attribute qualifier="aaa" type="EnumType" autocreate="true" generate="true"> 
    <persistence qualifier="bbbl" type="property" /> 
    <modifiers read="true" write="true" search="true" removable="true" 
    optional="true" /> 
    <description>aaa</description> 
</attribute> 

如何跳過錯誤?

回答

2

您是否在enumtypes部分實際創建了EnumType?嘗試這樣的:

<enumtypes> 
    <enumtype code="MyEnumType" autocreate="true" generate="true" dynamic="false"> 
     <value code="SOMETHING"/> 
    </enumtype> 
</enumtypes> 

<attribute qualifier="aaa" type="MyEnumType" autocreate="true" generate="true"> 
    <persistence type="property" /> 
    <modifiers read="true" write="true" search="true" removable="true" 
    optional="true" /> 
    <description>aaa</description> 
</attribute> 

這是正確的方法來做到這一點。首先定義枚舉類型,然後將其用作普通類型。