Annotation + Apache Bean Utils  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
javaBeats
Java Ninja
[Avatar]

Membro desde: 27/01/2005 11:41:47
Mensagens: 296
Offline

Hail!

Galera, preciso de uma ajuda no seguinte... Considerem o seguinte código:



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

"Life is a tragedy for those who feel, and a comedy for those who think". La Bruyere
[Email]
javaBeats
Java Ninja
[Avatar]

Membro desde: 27/01/2005 11:41:47
Mensagens: 296
Offline

Ninguém...?

Ou o que eu estou pedindo é tão ridículo e óbvio, só eu que não vi? =D

Valeu!

"Life is a tragedy for those who feel, and a comedy for those who think". La Bruyere
[Email]
Mauricio Linhares
Moderador
[Avatar]

Membro desde: 09/01/2005 23:28:22
Mensagens: 3717
Localização: João Pessoa, Paraíba - Brasil
Offline

Se você tem os objetos Field, basta chamar Field.getDeclaredAnnotations(), não são as anotações do Campo que você quer?

Meu blog sobre desenvolvimento | My Last.fm | @mauriciojr

Screencast de Introdução a linguagem Objective-C
[WWW]
javaBeats
Java Ninja
[Avatar]

Membro desde: 27/01/2005 11:41:47
Mensagens: 296
Offline

Sim companheiro, mas se você olhar a documentação desse método, vai ver que ele não retorna os campos herdados de super classes, que é o que eu preciso, nesse caso.

Rodrigo

"Life is a tragedy for those who feel, and a comedy for those who think". La Bruyere
[Email]
Mauricio Linhares
Moderador
[Avatar]

Membro desde: 09/01/2005 23:28:22
Mensagens: 3717
Localização: João Pessoa, Paraíba - Brasil
Offline

Campo herdado? Esse é o objeto Field, que representa um atributo em um objeto. Você não disse lá em cima que já tinha todos os campos (os objetos Field) que precisava?

Meu blog sobre desenvolvimento | My Last.fm | @mauriciojr

Screencast de Introdução a linguagem Objective-C
[WWW]
javaBeats
Java Ninja
[Avatar]

Membro desde: 27/01/2005 11:41:47
Mensagens: 296
Offline

Sim, usando o Commons BeanUtils ou o Introspector, mas estes não trazem annotations destes campos... Eu teria que recuperar o campo, e depois chamar getField(name) para ter uma instância de Field e pegar as annotations dele. Acontece que eu gostaria de saber se já posso recuperar essas annotations durante a introspecção, com o BeanUtils, Introspector, ou qualquer outro recurso que vocês possam me sugerir =D

Mas se não for possível, tudo bem, basta fazer a introspecção e depois recuperar a instância de Field, que tem as Annotations.

Rodrigo

"Life is a tragedy for those who feel, and a comedy for those who think". La Bruyere
[Email]
Mauricio Linhares
Moderador
[Avatar]

Membro desde: 09/01/2005 23:28:22
Mensagens: 3717
Localização: João Pessoa, Paraíba - Brasil
Offline

Não, não é possível fazer isso via BeanUtils não, você tem que pegar o Field e chamar o método getAnnotatios() nele.

Meu blog sobre desenvolvimento | My Last.fm | @mauriciojr

Screencast de Introdução a linguagem Objective-C
[WWW]
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team