Seam / Hibernate中的类级别验证

时间:2010-12-02 17:28:48

标签: hibernate jsf richfaces seam

我在seam / hibernate应用程序中实现了一个自定义类级别验证器。在我的表格上,我有<s:validateAll>。此标记不会调用类级别验证。

相关问题: https://jira.jboss.org/browse/JBSEAM-1878

使用Seam / JSF / RichFaces调用此验证的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

您是否使用过validator属性?您必须与s:validateAlls:validate

一起使用

这可能不是你所说的hibernate类级别验证,但至少它可以工作

例如:

<h:inputText value="#{foo.bar}" validator="#{validator.checkFoo}" required="true">
  <s:validate/>
</h:inputText>

验证员

@Name("validator")
@Scope(ScopeType.EVENT)
@BypassInterceptors
public class Validator {
    public void checkFoo(FacesContext context, UIComponent toValidate, Object value) {
        //Do some check and if incorrect set this value
        ((UIInput) toValidate).setValid(false);
    }
}