我有一个用JSF设计的表单。我需要检查是否选中了一个列表框项。我正在进行bean级验证。我的代码是:
<webuijsf:listbox style="margin-left:10px;" binding="#user$webreports$frequentvisitorscategories.listBox}"
id="listbox" items="#frequentvisitorscategories.listboxDefaultOptions.options}"
selected="#{user$webreports$frequentvisitorscategories.selectedItemCategory}" rows="10" styleClass="listbox" multiple="true" width="190" required="true" validatorExpression="#{frequentvisitorscategories.category_validate}" />
----------------------------------------------------------------------
public void categories_validate(FacesContext context, UIComponent component, Object value)
{ String selectedValue = (String) value;
if(selectedValue.equals(null))
{
((UIInput)component).setValid(false);
FacesMessage message = new FacesMessage("Please select a category");
context.addMessage(component.getClientId(context), message);
}
}
当我没有选择某些内容时,它不会显示验证消息。有没有人对此有任何意见? 提前致谢