0

我有一些输入字段和一些 selectonemenu,我需要验证它们,并且基于它们的验证,我必须显示整个页面的错误消息。我还必须使用该输入字段和 selectonemenu 显示消息。

我的验证仅适用于空值和空白值。由于我想显示基于 null 和空白字段的消息,因此我尝试了 bean 端验证。但是我的验证方法永远不会用于空白字段。

4

1 回答 1

6

只需required="true"在输入组件上使用。

<h:inputText id="input" ... required="true" />
<h:message for="input" />
<h:selectOneMenu id="menu" ... required="true" />
<h:message for="menu" />

您对“bean 方面”不是很清楚,问题中使用的术语非常差且过于通用,但是如果您实际上是指 JSR303 bean 验证并期望@NotNull触发,那么您需要将以下上下文参数添加到web.xml

<context-param>
    <param-name>javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL</param-name>
    <param-value>true</param-value>
</context-param>

这样,JSF 将null在传递给模型之前将提交的空字符串值转换为。@NotNull意志不会在空弦上起作用。

也可以看看:

于 2013-01-24T15:34:51.557 回答