我有一个用例,我试图在items.xml中声明一个类型为HybrisEnumValue
的属性的新itemtype。
但是,当我尝试进行ant构建时,我总是会在此属性上出现构建错误 - 由于缺少HybrisEnumValue类型而导致错误。
这是我的Items.xml条目:
<itemtype code="xyz" generate="true" autocreate="true">
<deployment table="xyz" typecode="1"/>
<attributes>
<attribute type="HybrisEnumValue" qualifier="def">
<persistence type="property"/>
<modifiers read="true" write="true" search="true" optional="true" />
</attribute>
</attributes>
</itemtype>
答案 0 :(得分:1)
HybrisEnumValue
不是Type,它实际上是一个接口,您无法在items.xml中将其定义为对象类型。
要在模型中定义enumValue,您需要先使用enumtype
标记定义枚举值。
<enumtype generate="true" code="ColorEnum" autocreate="true"
dynamic="true">
<value code="BLACK" />
<value code="BLUE" />
<value code="BROWN" />
<value code="GREEN" />
</enumtype>
您可以选择是否使您的enumType动态化。动态意味着您也可以在运行时添加值。 确保在项目类型上方定义enumType。
点击此处EnumType
现在在模型中定义你的enumType,就像这样..
<itemtype code="xyz" generate="true" autocreate="true">
<deployment table="xyz" typecode="1"/>
<attributes>
<attribute type="ColorEnum" qualifier="color">
<persistence type="property"/>
<modifiers read="true" write="true" search="true" optional="true" />
</attribute>
</attributes>
</itemtype>
执行ant all,它将生成实际为implements HybrisEnumValue
的ColorEnum.java。