GUJ / Assuntos Gerais / Topico Spring - Advice para Log 9 de janeiro de 2009 1 resposta von.juliano 9 de janeiro de 2009 Pessoal, estou tentando criar um Advice que deve fazer o log antes, depois e no lançamento de uma exceção. É a primeira vez que tento fazer isso e estou com dificuldades, no meu context.xml eu coloquei: <aop:config> <aop:aspect ref="logAdvice"> <aop:pointcut id="performance" expression="execution(* *.*(..))" /> <aop:before method="before" pointcut="performance" /> <aop:after-returning method="after" pointcut="performance" /> <aop:after-throwing method="afterThrowing" pointcut="performance" /> </aop:aspect> </aop:config> E dá a seguinte Exception: Caused by: org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.springframework.aop.aspectj.AspectJPointcutAdvisor]: Constructor threw exception; nested exception is java.lang.IllegalArgumentException: Pointcut is not well-formed: expecting '(' at character position 0 performance ^ Estou no caminho certo? Tem uma forma mais fácil de fazer isso? Obrigado! :thumbup: Alura Desenvolvimento Back-End Java Sua Carreira em desenvolvimento back-end Java: dos fundamentos à arquitetura de sistemas... 1 Resposta von.juliano 9 de jan. de 2009 Estudando a documentação, removi o que tinha colocado no xml, e deixei apenas: <aop:aspectj-autoproxy/> então anotei a classe: @Aspect public class LogAdvice { @Pointcut("execution(* br.com.projeto.dao.Dao.*(..))") public void before() { System.out.println("LogAdvice"); } @Pointcut("within(br.com.projeto.dao.*)") // tentativa diferente public void afterReturning(){ System.out.println("LogAdvice"); } } Agora não dá erro, mas ainda não funciona, os System.out não são chamados em nenhum momento. Será que falta alguma coisa? :roll: Criado 9 de janeiro de 2009 Ultima resposta 9 de jan. de 2009 Respostas 1 Participantes 1 Topicos relacionados Componente de forum 4 respostas Consultar CPF pelo nome na Receita Federal 5 respostas Pegadinhas que se fazem com os pobres estagiários 62 respostas [Resolvido] Como comparar Strings em C? 6 respostas Converter pixels para centímetros 9 respostas Alura O que é Python? — um guia completo para iniciar nessa linguagem de programação Acesse agora o guia sobre Python e inicie sua jornada nessa linguagem de programação: o que é e para que serve, sua sintaxe e como iniciar nela! Lumina Lumina: a IA que te traz resultados Prompts prontos por especialistas. Resolva seus problemas de verdade.