Hail!
Galera, preciso de uma ajuda no seguinte… Considerem o seguinte código:
// Uma classe base
public abstract class Base {
@MyOwnAnnotation
private int atributo;
}
// Uma classe especializada
public class Especializada extends Base {
@MyOwnAnnotation
private int atributo2;
@YetAnotherAnnotationOfMine
private int atributo3;
}
Como faço para, a partir de uma instância da classe ESPECIALIZADA, descobrir se existem Annotations no atributo herdado da classe Base?
Eu tentei usar a API padrão de reflect, mas o método getDeclaredFields() não retorna os campos que forem herdados de outra classe =/
O Commons BeanUtils da Apache traz o atributo herdado para mim, mas não há na API - ou ao menos eu não encontrei - um meio de acessar as Annotations de uma propriedade (espero sinceramente estar enganado, e que alguém me indique o caminho =)
Por fim, o bendito java.beans.Introspector, que também foi capaz de identificar todas as propriedades (claro, o Commons BeanUtils é escrito sobre ele =), mas não soube como recuperar Annotations sobre as mesmas.
Alguma idéia, pessoal?
Desde já, eu agradeço!
Rodrigo