Le 16 May 2002 Nicolas Delsaux a �crit : > [...] > setXXX la ligne logOperation(this, "..."); Et avec mes coll�gues, nous > trouvons que �a va rajouter pas mal de lignes de code au programme. > Est-il possible, dans ce genre de cas, d'utiliser la classe Proxy de > java.lang.reflect pour ajouter, � l'ex�cution et pour les classes qui > nous int�ressent, cette ligne de log, sans avoir bien s�r � modifier > la m�thode de la classe d'un pouill�me ? >
Voici d'autres pistes, que j'ai jamais essay�, mais je serais curieux d'avoir des retours d'infos. Il existe un java.lang.Runtime.traceMethodCalls(boolean), mais qui ne fonctionne pas avec toutes les JVM (c'est vraiment pratique ! ) Peut �tre qu'avec la v�tre ?... Il existe aussi la JPDA (Java Platform Debugger Architecture), standard � partir de la 1.3, semble-t-il, ou un debogueur ext�rieur � une JVM peut s'y connecter � l'aide de diff�rentes combines. J'imagine qu'il pourrait tracer les appels de m�thode. Consulte la doc du JDK 1.3. Enfin, toujours avec le jdk 1.3, le JVMPI (Java Virtual Machine Profiler Interface), � caract�re exp�rimental, me dit la doc. Exp�rimente, alors. L'autre approche est de remettre en cause le 'pas changer la classe d'un pouill�me'. Etes-vous vraiment oblig�s, ou est-ce la peur de de rajouter x lignes de code ? Le syst�me des proxy permet-t-il d'arriver � un loguing aussi fin et souple que les outils � la log4j ? Qu'est-ce qui vous inqui�te dans le fait de toucher aux classes existantes ? A+. -- Sur le Web, tout de suite. Herve AGNOUX - diaam informatique http://www.diaam-informatique.com
