我有一个使用案例,需要首先将枚举
的值显示为下拉列表在GSP页面上,然后让用户选择其中一个值,最后将数据绑定到域上。
所以我的GSP代码看起来像是我的枚举是MyEnum
<g:select from="${MyEnum.getAllEnumList()}" optionValue="name" name="duration"/>
我的枚举值是
public enum MyEnum {
MIN15('15 Minutes'),
MIN30('30 Minutes'),
HOUR1('1 Hour'),
HOUR2('2 Hours'),
HOUR5('5 Hours'),
HOUR8('8 Hours'),
HALFDAY('half day'),
FULLDAY('full day')
private final String name
private final String displayName
public static final List<MyEnum> getAllEnumList() {
[MIN15,MIN30,HOUR1,HOUR2,HOUR5,HOUR8,HALFDAY,FULLDAY]
}
public String toString() {
return displayName
}
MyEnum(String name,String displayName) {
this.name = name
this.displayName = displayName;
}
}
当我访问该页面时出现错误,如下所示:
Error processing GroovyPageView: Error executing tag <g:form>: Error evaluating expression [MyEnum.getAllEnumList()] on line [37]: java.lang.NoClassDefFoundError: Could not initialize class ENUM.MyEnum at D:/myspace/projects/IcepushpluginSampleApp/grails-app/views/util/test.gsp:46
有什么想法吗?
<%@ page import="fully.qualified.path.MyEnum" %>
。 - Dónal