Validation 如何在jsf中验证bean端的空白字段?

Validation 如何在jsf中验证bean端的空白字段?,validation,jsf,Validation,Jsf,我有一些输入字段和一些selectonemenu,我需要验证它们,根据它们的验证,我必须为整个页面显示一条错误消息。我还必须显示带有输入字段的消息,然后选择一个菜单 我的验证只针对空值和空值。因为我想显示一条基于空字段和空字段的消息,所以我尝试了bean端验证。但是,我的验证方法从不为空白字段调用。只需在输入组件上使用required=“true” <h:inputText id="input" ... required="true" /> <h:message for="in

我有一些输入字段和一些selectonemenu,我需要验证它们,根据它们的验证,我必须为整个页面显示一条错误消息。我还必须显示带有输入字段的消息,然后选择一个菜单

我的验证只针对空值和空值。因为我想显示一条基于空字段和空字段的消息,所以我尝试了bean端验证。但是,我的验证方法从不为空白字段调用。

只需在输入组件上使用
required=“true”

<h:inputText id="input" ... required="true" />
<h:message for="input" />
<h:selectOneMenu id="menu" ... required="true" />
<h:message for="menu" />
通过这种方式,JSF将在传递到模型之前将提交的空字符串值转换为
null
@NotNull
将不会在空字符串上生效

另见:

你在谷歌上看过吗?顺便说一下,JSF总是在服务器端进行验证,对于客户端,您需要使用第三方库或编写自己的javascript代码。谢谢@BalusC的回复。我很抱歉使用“豆角”术语。我一定要去尝尝。
<context-param>
    <param-name>javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL</param-name>
    <param-value>true</param-value>
</context-param>