0
私は非常に簡単なシナリオを扱います。選択コントロールのオプションセットを表すために列挙型が作成されます。選択コントロールはプロンプトをプロンプト値として ' - 'にマップする必要があります。対応する列挙型にはこのダッシュはありません。選択コントロールが依然としてプロンプトにある状態でページが送信されると、例外がスローされます。あなたはそのようなケースをどのように扱いますか?Spring 3:値の列挙を列挙する値を選択してください
ページ:
<select id="filterUserAccessLevel" name="filterUserAccessLevel">
<option value="-">Select Value</option>
<option value="DEPOSITOR">Depositor</option>
<option value="READER">Reader</option>
<option value="AUTHOR">Author</option>
<option value="EDITOR">Editor</option>
<option value="ADMINISTRATOR">Administrator</option>
</select>
<input type="submit" name="resetFilter" value="<spring:message code="common.filterResetButtonLabel" />" />
UserAccessLevel列挙型:
public enum UserAccessLevel {
DEPOSITOR("DEPOSITOR"),
READER("READER"),
AUTHOR("AUTHOR"),
EDITOR("EDITOR"),
ADMINISTRATOR("ADMINISTRATOR");
private String code;
private UserAccessLevel(String code) {
this.code=code;
}
public String getCode() {
return this.code;
}
}
コントローラー:
@RequestMapping(value="/userIndex/", method=RequestMethod.POST, params="resetFilter")
public void resetFilter(@ModelAttribute("userIndexBean") UserIndexBean bean, Model model) {
System.out.println("resetFilter()");
bean.resetFilterSection();
loadBean(1, bean, model);
}
例外: " - "
Field error in object 'userIndexBean' on field 'filterUserAccessLevel': rejected value [-];