【问题标题】:How to validate blank field on bean side in jsf?如何在jsf中验证bean端的空白字段?
【发布时间】:2013-01-24 13:31:56
【问题描述】:

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

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

【问题讨论】:

标签: validation jsf


【解决方案1】:

只需在输入组件上使用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 即不会启动空字符串。

另见:

【讨论】:

  • 感谢@BalusC 的回复。我很抱歉使用“bean side”术语。我一定会尝试的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-22
  • 1970-01-01
  • 2023-03-30
相关资源
最近更新 更多