我想要包含一个枚举
public enum ContactType {
PHONE,
FAX,
MAIL
}
到我的flow.xml
可以访问视图以及流本身。我试图将它添加为var(如bean):
<var name="ContactType" class="my.package.common.util.ContactType"/>
但我收到错误:
NoSuchMethodException: my.package.common.util.ContactType.<init>()
我应该以某种方式init()
枚举吗?或者还有另一种方法可以包含它?
答案 0 :(得分:0)
你可能必须这样做。不是最好的,但应该使用你的小枚举集:
<evaluate expression="T(my.package.common.util.ContactType).PHONE" result="conversationScope.phoneContactType"/>
<evaluate expression="T(my.package.common.util.ContactType).FAX" result="conversationScope.faxContactType"/>
<evaluate expression="T(my.package.common.util.ContactType).MAIL" result="conversationScope.mailContactType"/>
希望这对您有用 - 否则应考虑上面的@ rptmat57解决方案。
答案 1 :(得分:0)
你不能按照spring webflow docs:
使用var元素声明流变量:
确保您的变量类实现了java.io.Serializable,因为在流请求之间保存了实例状态。
或
枚举类型除了枚举常量定义的实例外没有其他实例。 https://docs.oracle.com/javase/specs/jls/se8/html/jls-8.html#jls-8.9
因此...