Bonjour

Je commence à avoir une certaine expérience de tomcat, et il me semble que lors de l'undéploiement d'une application (ou du repli, puisque parait-il c'est le terme français qui y correspond), le comportement par défaut n'est pas celui d'un arrêt propre de l'application et de l'ensemble de ses threads.

Apparemment Tomcat est suffisamment intelligent pour s'apercevoir que le driver mysql doit être supprimé, mais par contre la plupart des threads lancés par des librairies de l'application restent actifs, et une bonne part de l'espace alloué pour les classes n'est pas rendu au garbage collector, ce qui conduit à une exception de PermGen Space non pas au bout de quelques centaines de redéploiement comme j'ai pu le voir ici ou là sur des forums, mais plutôt 3 ou 4.

D'où ma question, comment faire pour indiquer à Tomcat que lors du repli de l'application, il doit libérer tout l'espace alloué et tuer tous les threads?

Je précise que j'utilise le framework seam et que j'ai une classe qui implémente ServletContextListener enregistrée dans mon web.xml