Hibernate Validator Class-Constraints-Mappings文件中的级别约束

Hibernate Validator Class-Level constraints in the Constraints-Mappings file

我正在使用约束映射 XML 进行 bean 验证。我有几个工作正常的自定义约束,以及分组。但是我已经非常详尽地查看了,我找不到如何在映射 XML 中具体设置 Class-Level 约束。使用注释很简单,但如果有人对如何通过 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。我已经设置了一个自定义约束和验证器来处理这种情况……但我似乎无法让我的 XML 在字段外时识别我的约束注释语句。我尝试了 class 标签的变体,但无济于事。同样,我们将不胜感激任何帮助。 -Trax

所以我只需要在上面睡觉。这是工作 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>

希望这对以后的其他人有所帮助。