Quando instancio um objeto dessa classe que possui o metodo acima anotado com meu annotation "Logged" e tento ultilizar um isAnnotationPresent(Logged.class), ele me retorna false, alguma ideia falera doque pode ser ?
Thiago ! Bom dia é isso que estou fazendo, da seguinte maneira :
for (Method method : dominio.getClass().getDeclaredMethods()) {
System.out.println("Entrei no looooopppp !!");
if (method.isAnnotationPresent(Logged.class)) {
System.out.println("Econtrei uma anotation logged !");
}
}
mais mesmo ela estando lá, ele naum a encontra
estranho neh?
abraços amigo !
T
thingol
Hum… levando em conta que meu nome não é Thiago, James ou qualquer pai do Harry Potter, você não poderia pelo menos imprimir que métodos você está mostrando? “Entrei no looop” não é muito informativo (só para a gente saber que você entrou numa fria), mas
já lhe ajuda bem mais.
Talvez em vez de “getDeclaredMethods” você precise usar alguma outra coisa.
MasterDevil
Mil desculpas por te chamar de Thiago, acreditava eu ter lido thiago ao invés de thingol, me desculpe !
Printei o nome dos metodos que o declaredMethods esta me retornando
14:02:57,243 INFO [STDOUT] metodo getId
14:02:57,243 INFO [STDOUT] metodo setId 14:02:57,243 INFO [STDOUT] metodo getDescricao[color=red] [/color]
14:02:57,244 INFO [STDOUT] metodo setDescricao
14:02:57,244 INFO [STDOUT] metodo setDataAtualizacao
14:02:57,244 INFO [STDOUT] metodo getDataAtualizacao
14:02:57,244 INFO [STDOUT] metodo getRegional
14:02:57,245 INFO [STDOUT] metodo setRegional
O metodo que esta anotado com a minha anotação, passa pela verificação do isAnnotationPresent, e mesmo assim retorna false.
Muito estranho isso, pelo que li ta tudo certo…
Alguma ideia ?
Muito obrigado, e desculpe novamente !
T
thingol
Agora vou ser um pouquinho mais chato. Pode imprimir, para cada método, que anotações ele tem? (em vez de usar “isAnnotationPresent”, usar “getAnnotations” e ir imprimindo o que você achar para cada método?
MasterDevil
Opaaa amigo segue abaixo o codigo que fiz :
Ele não imprime nada, pois o unico metodo que possui anotacao e o que tem a anotação que eu criei, que por sinal não retorna, POREM … efetuei o teste de colocar um @Id do persistence … em um metodo apenas pra saber se ele retornaria, e SIM … ele retornou …
O unico que não retorna e o meu annotation