Java обработчик аннотаций: javax.validation.constraints.Past аннотации изменил тип поля. Например,
public class Foo {
@javax.persistence.Temporal(TemporalType.TIMESTAMP)
private Date date;
}
for (Element element : clsElement.getEnclosedElements()) {
TypeMirror type = element.asType(); // type is Type$ClassType
}
Тип Type$ClassType
. Но добавляя аннотацию @Past
public class Foo {
@javax.persistence.Temporal(TemporalType.TIMESTAMP)
@javax.validation.constraints.Past
private Date date;
}
element.asType () изменяется на Type$AnnotatedType
.
Почему @Past изменил тип? Но @Temporal не изменит его. Как получить TypeMirror от AnnotatedType?