Aspectj @Autour de la coupe transverse (pointcut) toutes les méthodes en Java
je suis en train d'écrire un simple minuteur aspect de l'instrument de toutes les méthodes dans tous les paquets qui appartiennent à mon projet. Mais, ensuite, les types de retour des différentes méthodes dans les classes sont différentes et j'obtiens ceci à la suite erreur:
Elle ne fonctionne que pour setter, mais pas pour getter...
D'erreur: application à la jonction qui n'a pas de retour void
et voici mon timeraspect
...
@Around("execution(* com.myproject..*(..))")
public void log(ProceedingJoinPoint pjp) throws Throwable{
LOG.info("TimerAspect");
String name = pjp.getSignature().getName();
Monitor mon = MonitorFactory.start(name);
pjp.proceed();
mon.stop();
LOG.info("TimerAspect Mon" + mon);
String printStr = mon.getLabel()+","+mon.getUnits()+","+mon.getLastValue()+","+mon.getHits()+","+mon.getAvg()+","+mon.getTotal()+","+mon.getMin()+","+mon.getMax()+","+mon.getFirstAccess()+","+mon.getLastAccess();
File f = new File("target/stats.csv");
BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(f, true));
bufferedWriter.write(printStr);
bufferedWriter.newLine();
bufferedWriter.flush();
bufferedWriter.close();
}
Aucune idée pour résoudre ce est grandement apprécié.
Grâce
OriginalL'auteur rb8680 | 2012-06-30
Vous devez vous connecter pour publier un commentaire.
Vous devez capturer la sortie de votre conseillé d'appel et de retour de votre autour de conseils le long de ces lignes:
Cela va prendre soin de tous vos appels
OriginalL'auteur Biju Kunjummen