我正在使用约束映射 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/