我创建了一个验证注释来验证字符串的内容。我的注释的定义如下:
@NotNull
@Size(min = 2, max = 128, groups = First.class)
@Pattern(regexp = "^(?!WP_([0-9])+$)[A-Z_][A-Z0-9_-]+", groups = Second.class)
@Target({FIELD, ANNOTATION_TYPE})
@Retention(RUNTIME)
@Documented
@Constraint(validatedBy = {})
@GroupSequence(value={First.class, Second.class})
public @interface ValidIntentName {
String message() default "";
Class<?>[] groups() default {};
Class<? extends Payload>[] payload() default {};
}
我的问题是我无法订购 @Size 和 @Pattern 执行。到目前为止,我已经尝试了几件但没有运气。
基本上我需要在@Pattern
之前执行@Size
定义了第一个和第二个接口。编译过程中没有错误只是在运行时@Patter在@Size之前执行。
知道我做错了什么吗?
我正在运行Java 8.
由于