简体   繁体   中英

No validator could be found for type: java.lang.Short

I have a JAXB generated class containing the following:

@Pattern(regexp = "[0-9]", message = "Message details here")
protected Short msgVal;

When I run a JUnit test to validate an instance of that class via Hibernate, I get:

javax.validation.UnexpectedTypeException: No validator could be found for type: java.lang.Short .

If I comment out the @Pattern constraint, the JUnitTest runs fine.

Is it possible to have @Pattern constraints on Short values? If so, what am I missing?

Regards, PM.

@Pattern is for Strings, you cannot apply it to a Short. Instead, you can use @Max and/or @Min. @Digits may be even better.

@Digits(integer=1, fraction=0)
protected Short msgVal;

no @Pattern annotation just takes arguments as String. You can use @Digits(message="message here", integer=32767, fraction = 0)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM