|
30 | 30 | * to loaded classes without the need to use a VM-wide agent. |
31 | 31 | * |
32 | 32 | * <p>To be registered using a |
33 | | - * {@code <a href="http://tomcat.apache.org/tomcat-5.5-doc/config/loader.html">Loader</a>} tag |
34 | | - * in Tomcat's {@code <a href="http://tomcat.apache.org/tomcat-5.5-doc/config/context.html">Context</a>} |
| 33 | + * {@code <a href="http://tomcat.apache.org/tomcat-6.0-doc/config/loader.html">Loader</a>} tag |
| 34 | + * in Tomcat's {@code <a href="http://tomcat.apache.org/tomcat-6.0-doc/config/context.html">Context</a>} |
35 | 35 | * definition in the {@code server.xml} file, with the Spring-provided "spring-instrument-tomcat.jar" |
36 | | - * file deployed into Tomcat's "server/lib" (for Tomcat 5.x) or "lib" (for Tomcat 6.x) directory. |
37 | | - * The required configuration tag looks as follows: |
| 36 | + * file deployed into Tomcat's "lib" directory. The required configuration tag looks as follows: |
38 | 37 | * |
39 | 38 | * <pre class="code"><Loader loaderClass="org.springframework.instrument.classloading.tomcat.TomcatInstrumentableClassLoader"/></pre> |
40 | 39 | * |
|
44 | 43 | * {@code getThrowawayClassLoader} methods mirror the corresponding methods |
45 | 44 | * in the LoadTimeWeaver interface, as expected by ReflectiveLoadTimeWeaver. |
46 | 45 | * |
47 | | - * <p>See the PetClinic sample application for a full example of this |
48 | | - * ClassLoader in action. |
49 | | - * |
50 | | - * <p><b>NOTE:</b> Requires Apache Tomcat version 5.0 or higher. |
| 46 | + * <p><b>NOTE:</b> Requires Apache Tomcat version 6.0 or higher, as of Spring 4.0. |
51 | 47 | * |
52 | 48 | * @author Costin Leau |
53 | 49 | * @author Juergen Hoeller |
@@ -103,7 +99,7 @@ public void addTransformer(ClassFileTransformer transformer) { |
103 | 99 | */ |
104 | 100 | public ClassLoader getThrowawayClassLoader() { |
105 | 101 | WebappClassLoader tempLoader = new WebappClassLoader(); |
106 | | - // Use reflection to copy all the fields since most of them are private on pre-5.5 Tomcat. |
| 102 | + // Use reflection to copy all the fields since they are not exposed any other way. |
107 | 103 | shallowCopyFieldState(this, tempLoader); |
108 | 104 | return tempLoader; |
109 | 105 | } |
|
0 commit comments