Comment faire de travail de Tomcat avec TomcatInstrumentableClassLoader définis dans META-INF/context.xml avec WEB-INF/lib/spring-instrument-tomcat.jar

J'avais construit une application simple qui utilise les Données du Printemps 3.1.0.LIBÉRATION et Eclipselink 2.4 sur le côté serveur qui est hébergé dans le serveur Tomcat 7.0.27. Dans mywebapp/META-INF/context.xml je Ressort du chargeur de classe

<Loader loaderClass="org.springframework.instrument.classloading.tomcat.TomcatInstrumentableClassLoader"/>

Si j'ai mis spring-instrument-tomcat.jar en $TOMCAT_HOME/lib puis Tomcat fonctionne mywebapp bien, mais si je mets spring-instrument-tomcat.jar dans le $TOMCAT_HOME/webapps/mywebapp/WEB-INF/lib - Tomcat meurt à l'exception

java.lang.IllegalStateException: ClassLoader [org.apache.catalina.loader.WebappClassLoader] does NOT provide an 'addTransformer(ClassFileTransformer)' method. Specify a custom LoadTimeWeaver or start your Java virtual machine with Spring's agent: -javaagent:org.springframework.instrument.jar

Contexte chargeur paramètre useSystemClassLoaderAsParent ensemble de false n'aide pas non plus.

Je ne veux pas avoir des (personnalisé) global lib de Tomcat (et ce ne sera pas facile d'avoir la mondiale dans notre vie réelle système de production) donc je suis en train d'essayer de localiser tous les matériaux nécessaires en simple (mais gros) fichier war. Toute réflexion sur la façon de parvenir à une telle encapsulation?

OriginalL'auteur aka_sh | 2012-06-28