【问题标题】:LocalDate field validation does not work on DTOLocalDate 字段验证不适用于 DTO
【发布时间】:2019-02-19 01:07:16
【问题描述】:

我正在使用 dto 对字段验证进行一些测试,并在 Spring boot api 上使用 @NotEmpty 注释 LocalDate 变量,但是,我收到了这个错误:

javax.validation.UnexpectedTypeException: HV000030: No validator could be found for constraint 'javax.validation.constraints.NotEmpty' validating type 'java.time.LocalDate'. Check configuration for 'dateBirth'

注解库是javax.validation.constraints.NotEmpty,曾经尝试过使用javax.validation.constraints.NotEmpty,但是,所以注解被标记为已弃用。

变量声明:

@NotEmpty(message = "Campo Data de Nascimento é obrigatório")
private LocalDate dateBirth;

是否需要在 pom.xml 中添加一些依赖什么的?

【问题讨论】:

标签: java validation spring-boot


【解决方案1】:

Doc 表示@NotEmpty 仅支持CharSequenceCollectionMapArray 类型,因此LocalDate 不属于这些类型中的任何一种。对于空检查,您应该只使用@NotNull,因为它可以针对任何类型进行验证。还有@Past 验证日期是否过去(在您的情况下为dateBirth)。

【讨论】:

    猜你喜欢
    • 2020-01-07
    • 1970-01-01
    • 2020-07-03
    • 1970-01-01
    • 1970-01-01
    • 2021-11-18
    • 2014-03-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多