【问题标题】:JSF 2 and manual validation with JSR 303 - how to track fields?JSF 2 和使用 JSR 303 的手动验证 - 如何跟踪字段?
【发布时间】:2013-04-11 08:15:47
【问题描述】:

我想在我的 JSF 2 项目中使用 JSR 303(Hibernate Validator)。但是,我的表单很复杂,字段级验证还不够。我需要在模型及其子 bean 的类级别使用许多 @ScriptAssert 注释。

所以我想手动验证表单模型(例如在 bean 操作方法中)。但我不明白如何保留应在哪个字段显示哪个验证消息(因为它在启用字段级验证并由 JSF 处理时自动工作)。

我还需要为一些类级别的注释指定它们的消息将显示在特定字段中。我没有看到直接管理它的方法...

您能否提供一个链接来解释这些问题(或告诉我我做错了什么?)。我想我在谷歌上搜索失败了,因为互联网上充斥着关键词 JSF 和验证,抱歉。

【问题讨论】:

    标签: validation jsf bean-validation


    【解决方案1】:

    最惯用的方法是为您的类创建自定义 Bean Validation 验证器。

    您需要创建将放在类级别(而不是字段级别)并与该类验证器类相关联的验证注释。

    例如:

    托管 bean 内的验证也是可能的,您可以在您的操作方法中抛出适当的验证异常,但通常它很麻烦,难以重用并且将业务逻辑代码与验证混合。

    【讨论】:

      猜你喜欢
      • 2011-10-01
      • 2011-05-10
      • 2011-06-18
      • 2011-10-23
      • 1970-01-01
      • 1970-01-01
      • 2011-08-04
      • 2018-08-24
      • 2010-12-30
      相关资源
      最近更新 更多