使用枚举作为Wicket中的模型对象

rot*_*sch 7 java enums wicket

要在PropertyModel中使用Enum类,您可以编写:

new PropertyModel(MyObject, "MyEnumClass");
Run Code Online (Sandbox Code Playgroud)

现在这仅MyEnumClassMyObject-class中定义时才有效.

如何在模型中使用独立的Enum类?

编辑:我具体化:

RadioGroup<MyEnum> rg = new RadioGroup<MyEnum>("radioGroupID", new Model<MyEnum>(MyEnum.NORMAL));

rg.add(new Radio<MyEnum>("radioNormal", new Model<MyEnum>(MyEnum.NORMAL)));
rg.add(new Radio<MyEnum>("radioSpecial", new Model<MyEnum>(MyEnum.SPECIAL)));
Run Code Online (Sandbox Code Playgroud)

这里的问题是更改单选按钮不会改变模型RadioGroup.

rot*_*sch 2

我刚刚发现问题:我正在使用AjaxEventBehaviormyRadioGroup而不是AjaxFormChoiceComponentUpdatingBehavior.

这解决了问题中我的代码的模型更新问题。