Пользовательский валидатор не показывает правильное значение

Я создаю собственный валидатор в этом клиентском пакете: это код:

@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
@Retention(RUNTIME)
@Documented
@Constraint(validatedBy = {CustomDateValidator.class })
public @interface CustomDateConstraint {

    String message() default "{message}";
    Class<?>[] groups() default { };
    Class<? extends Payload>[] payload() default { };


    @Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
    @Retention(RUNTIME)
    @Documented
    @interface List {
        CustomDateConstraint[] value();
    }

}

вальдиатор:

 public class CustomDateValidator implements ConstraintValidator<CustomDateConstraint, Date> {


        @Override
        public void initialize(CustomDateConstraint constraintAnnotation) {


        }
        @Override
        public boolean isValid(Date data, ConstraintValidatorContext context) {
            if(data==null) {
                return false;
            }
//this in an example if it works fine or not
            return true;
        }
    }

Я помещаю новое ограничение в свой компонент:

@Temporal(TemporalType.TIMESTAMP)
    @CustomDateConstraint(message = "Date not null")
    private Date date;

Проблема в том, что когда я устанавливаю этот пользовательский валидатор, мой проект не компилируется. Не знаю, почему при компиляции я получаю это исключение:

[ERROR] Unexpected internal compiler error
java.lang.ArrayIndexOutOfBoundsException: 9216
    at org.objectweb.asm.ClassReader.readUTF8(Unknown Source)
    at org.objectweb.asm.ClassReader.accept(Unknown Source)
    at org.objectweb.asm.ClassReader.accept(Unknown Source)
    at com.google.gwt.dev.javac.BytecodeSignatureMaker.visitCompileDependenciesInBytecode(BytecodeSignatureMaker.java:228)
    at com.google.gwt.dev.javac.BytecodeSignatureMaker.getCompileDependencySignature(BytecodeSignatureMaker.java:209)
    at com.google.gwt.dev.javac.CompiledClass.getSignatureHash(CompiledClass.java:166)
    at com.google.gwt.dev.javac.Dependencies$Ref.<init>(Dependencies.java:42)
    at com.google.gwt.dev.javac.Dependencies$Ref.<init>(Dependencies.java:37)
    at com.google.gwt.dev.javac.Dependencies.resolve(Dependencies.java:114)
    at com.google.gwt.dev.javac.CompilationStateBuilder$CompileMoreLater.compile(CompilationStateBuilder.java:366)
    at com.google.gwt.dev.javac.CompilationStateBuilder.doBuildFrom(CompilationStateBuilder.java:580)
    at com.google.gwt.dev.javac.CompilationStateBuilder.buildFrom(CompilationStateBuilder.java:513)
    at com.google.gwt.dev.javac.CompilationStateBuilder.buildFrom(CompilationStateBuilder.java:499)
    at com.google.gwt.dev.cfg.ModuleDef.getCompilationState(ModuleDef.java:668)
    at com.google.gwt.dev.Precompile.precompile(Precompile.java:255)
    at com.google.gwt.dev.Precompile.precompile(Precompile.java:229)
    at com.google.gwt.dev.Precompile.precompile(Precompile.java:145)
    at com.google.gwt.dev.Compiler.run(Compiler.java:206)
    at com.google.gwt.dev.Compiler.run(Compiler.java:158)
    at com.google.gwt.dev.Compiler$1.run(Compiler.java:120)
    at com.google.gwt.dev.CompileTaskRunner.doRun(CompileTaskRunner.java:55)
    at com.google.gwt.dev.CompileTaskRunner.runWithAppropriateLogger(CompileTaskRunner.java:50)
    at com.google.gwt.dev.Compiler.main(Compiler.java:127)

Не знаю, в чем проблема. Кто-нибудь может мне помочь?

0 ответов

Другие вопросы по тегам