0

我有以下领域:

@Size(min=1, max=64)
@NotNull(message="may not be blank")
private String name;

我想哄骗验证给我所有的约束违规。例如,当将名称设置为“空”时,我想收到:“可能不是空白”和“大小必须在 1 到 64 之间”

目前我只收到:“可能不是空白”

关于如何配置验证引擎的任何提示?这是我当前通过 Spring 的配置:

<bean id="validator"
    class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean">
    <property name="validationPropertyMap">
        <util:map>
            <entry key="hibernate.validator.fail_fast" value="false" />
        </util:map>
    </property>
</bean>
4

1 回答 1

0

Bean Validation 规范建议将null其视为有效值;所有内置约束,例如@Size遵循该建议(@NotNull当然除外),因此在您的情况下,一个null值只会违反@NotNull约束。

我看到的这个要求的唯一解决方案是通过XML 约束映射禁用内置约束的默认验证器,并注册处理null为无效的自定义实现。

于 2013-03-09T20:14:00.223 回答