jsf - 验证错误 : Value is not valid for SelectManyCheckBox

标签 jsf jsf-2

<分区>

我是 JSF 的新手,我收到以下关于 <h:selectManyCheckBox> 的错误:

Validation Error: Value is not valid

这是我的模型:

private List<String> selectedRoles;
public List<SelectItem> availableRolesSelectItem;

for (Role role : rolesList) {
    SelectItem option = new SelectItem(role.getName(), role.getName() + " " + role.getDescription());
    availableRolesSelectItem.add(option);
}

这是我的观点:

<h:selectManyCheckbox value="#{mybean.selectedRoles}" required="true" requiredMessage="#{errormessages.valueRequired}">
    <f:selectItems value="#{mybean.availableRolesSelectItem}" />
</h:selectManyCheckbox>

SelectItem我没有分配 Role对象作为项目值,我只是分配一个 String值(value)。即使我收到错误。

你们能帮我解决这个问题吗?

最佳答案

在处理表单提交的请求期间,只要所选值与任何可用值不匹配,就会出现此错误。您需要确保 availableRolesSelectItem 在请求处理表单提交期间与显示表单期间完全相同。理想情况下,您将在 bean 的(后)构造函数中执行 availableRolesSelectItem 填充作业。

关于jsf - 验证错误 : Value is not valid for SelectManyCheckBox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6938165/

相关文章:

java - 如何将自定义命名空间添加到 JSF 中的 HTML 元素?

jsf - 为什么我的 JSF FacletContext==null?

java - 从 JSF 传递枚举值作为参数(重新访问)

jsf-2 - 带有复选框的 Primefaces 树,在单击行上的任意位置时避免选中/取消选中

javascript - 检测页面退出时 PrimeFaces 中 UI 组件的客户端更改?

jsf命令按钮操作在刷新中触发

jsf - 有条件地渲染复合组件中元素的属性

spring - 如何在 Spring 应用程序中使用 Maven 将 JSF 2.2 更新到 JSF 2.3

java - 如何创建实时应用程序

jquery - JSF 和 Jquery AJAX - 如何让它们一起工作?