javax.validation.UnexpectedTypeException: HV000030: No validator could be found for constraint 'java...

开始是

javax.validation.UnexpectedTypeException: No validator could be found for type: java.lang.Integer, 不能理解为什么,后面想到自己之前代码是好好的,修改了bean 之后才出现这个问题的。 具体来说:

@NotEmpty

private int cnt;

 

我加上了这个NotEmpty 后出现的, 于是,去掉吧。结果又出现了其他错误:

javax.validation.UnexpectedTypeException: HV000030: No validator could be found for constraint 'javax.validation.constraints.Size' validating type 'java.util.Date'. Check configuration for...

 

哦,应该是新加的 @size 注解引起的吧, 去掉后就好了。

 

但是,原因呢?

是这样的, @NotEmpty 只能用于对String 、 Collection 或 array 字段的注解, 其他的 就不行。 

@size 貌似只能用于对 数值类型字段注解。

@NotNull 可以用于 任意类型。

 

原文是:

As per the javadoc of NotEmpty, Integer is not a valid type for it to check. It's for Strings and collections. If you just want to make sure an Integer has some value, javax.validation.constraints.NotNull is all you need.

public @interface NotEmpty

Asserts that the annotated string, collection, map or array is not null or empty.

 

 

参考:

https://stackoverflow.com/questions/5982741/error-no-validator-could-be-found-for-type-java-lang-integer

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值