Fórum Duvida com AspectJ - referencias de pointcuts para um projeto externo Xlint:adviceDidNotMatch #414147
15/03/2012
0
criei um AspectJ pra realizar log dos meus saves e updates da minha entidade Usuário.
O UsuarioDAO tá bem simples...
Se eu coloco tudo num unico projeto, funciona! Mas se o DAO estiver em outro projeto, o eclipse informa o seguinte warning
esse warning fica no after e no before do update
Minha duvida é justamente a seguinte:
O estranho é que o after do save funciona! A diferença é que no update eu preciso do before e do after, dai eu tenho que usar execution ao inves do call, e é justamente esse meu problema... se eu coloco call, funciona... porem ele só executa o after.... se eu deixo execution, acontece esse problema dos warnings e ele nao faz nem o before nem o after do update
Peço por favor um help
Grato pela atenção
public aspect AspectAuditoria{
private pointcut doSave(Usuario usuario)
: call (* UsuarioDAO.save(*)) && args(usuario);
after(Usuario usuario) returning(Usuario usuario) : doSave(usuario) {
// registra no log o save processado...
}
private pointcut doUpdate(Usuario usuario)
: execution(* UsuarioDao.update(*)) && args(usuario);
before(Usuario usuario) : doUpdate(usuario) {
// registra no log a intenção de update antes da conclusão...
}
after(Usuario usuario) returning() : doUpdate(usuario) {
// registra no log o update processado...
}
}
O UsuarioDAO tá bem simples...
public class UsuarioDao{
Usuario save(Usuario usuario);
void update(Usuario usuario);
}
Se eu coloco tudo num unico projeto, funciona! Mas se o DAO estiver em outro projeto, o eclipse informa o seguinte warning
advice defined in .... has not been applied
[Xlint:adviceDidNotMatch]
[Xlint:adviceDidNotMatch]
esse warning fica no after e no before do update
Minha duvida é justamente a seguinte:
O estranho é que o after do save funciona! A diferença é que no update eu preciso do before e do after, dai eu tenho que usar execution ao inves do call, e é justamente esse meu problema... se eu coloco call, funciona... porem ele só executa o after.... se eu deixo execution, acontece esse problema dos warnings e ele nao faz nem o before nem o after do update
Peço por favor um help
Grato pela atenção
Oda San
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)