java - Constraints-Mappings 文件中的 Hibernate Validator 类级约束

标签 java xml hibernate validation

我正在使用约束映射 XML 进行 bean 验证。我有几个可以正常工作的自定义约束以及分组。但我已经相当详尽地查看了,但找不到如何在映射 XML 中专门设置类级约束。使用注释很简单,但如果有人对如何通过 XML 做到这一点有一些见解,我们将不胜感激。这是我正在查看的示例:

<bean
    class="SearchRequestTO"
    ignore-annotations="false">
    <constraint annotation="service.constraints.ValidSearch"> <!--where can i put you?-->
      <field
        name="name">
        <valid />
      </field>
      <field
        name="birthDate">
        <valid />
      </field>
      <field
        name="phoneNumber">
        <valid />
      </field>
      <field
        name="emailAddress">
        <valid />
      </field>
      <field
        name="accountId">
        <valid />
      </field>
      <field
        name="role">
        <valid />
      </field>
    </constraint>
  </bean>

我不需要对此特定请求进行字段级验证,但我确实想知道是否至少填充了其中一个,这需要查看整个 bean。我已经设置了一个自定义约束和 validator 来处理这种情况...但我似乎无法让我的 XML 在字段之外识别我的约束注释语句。我尝试过类标签的变体,但没有成功。再次强调,任何帮助将不胜感激。 -特拉克斯

最佳答案

所以我只需要 sleep 。这是工作 xml:

<bean
  class="SearchRequestTO"
  ignore-annotations="false">
    <class
      ignore-annotations="false">
      <constraint 
        annotation="service.constraints.ValidSearch">
      </constraint>
    </class>
    <field
      name="name">
      <valid />
    </field>
    <field
      name="birthDate">
      <valid />
    </field>
    <field
      name="phoneNumber">
      <valid />
    </field>
    <field
      name="emailAddress">
      <valid />
    </field>
    <field
      name="accountId">
      <valid />
    </field>
    <field
      name="role">
      <valid />
    </field>
  </constraint>
</bean>

希望这对其他人将来有帮助。

关于java - Constraints-Mappings 文件中的 Hibernate Validator 类级约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28911775/

相关文章:

java - Eclipse 中的 ical4j 出现 ParserException

java - 使用 itext 在 pdf 中打印 xml

java - 时间被设置为相同的 TextView

hibernate - 如何将现有的 Hibernate ORM 与 Cassandra 集成?

mysql - 摆脱获取每个组中第一个元素的查询中的子查询

java - 调试和检查java核心API?

java - 更改 CXF Web 服务上的响应字符集

ruby - 如何使用Nokogiri在NodeSet中添加子节点

java.lang.IllegalArgumentException : Can not set int field it. besmart.models.Park.idPark 到 [Ljava.lang.Object;

Java Access Enum的具体方法?