java.lang.Object | ||
↳ | WebappClassLoader | |
↳ | org.springframework.instrument.classloading.tomcat.TomcatInstrumentableClassLoader |
Extension of Tomcat's default class loader which adds instrumentation to loaded classes without the need to use a VM-wide agent.
To be registered using a
Loader
tag
in Tomcat's Context
definition in the server.xml
file, with the Spring-provided
"spring-tomcat-weaver.jar" file deployed into Tomcat's "server/lib" (for Tomcat 5.x) or "lib" (for Tomcat 6.x) directory.
The required configuration tag looks as follows:
<Loader loaderClass="org.springframework.instrument.classloading.tomcat.TomcatInstrumentableClassLoader"/>
Typically used in combination with a
ReflectiveLoadTimeWeaver
defined in the Spring application context. The addTransformer
and
getThrowawayClassLoader
methods mirror the corresponding methods
in the LoadTimeWeaver interface, as expected by ReflectiveLoadTimeWeaver.
See the PetClinic sample application for a full example of this ClassLoader in action.
NOTE: Requires Apache Tomcat version 5.0 or higher.
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Create a new
TomcatInstrumentableClassLoader using the
current context class loader. | |||||||||||
Create a new
TomcatInstrumentableClassLoader with the
supplied class loader as parent. |
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Delegate for LoadTimeWeaver's
addTransformer method. | |||||||||||
Delegate for LoadTimeWeaver's
getThrowawayClassLoader method. | |||||||||||
Protected Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
![]() |
Create a new TomcatInstrumentableClassLoader
using the
current context class loader.
Create a new TomcatInstrumentableClassLoader
with the
supplied class loader as parent.
parent | the parent ClassLoader to be used
|
---|
Delegate for LoadTimeWeaver's addTransformer
method.
Typically called through ReflectiveLoadTimeWeaver.
Delegate for LoadTimeWeaver's getThrowawayClassLoader
method.
Typically called through ReflectiveLoadTimeWeaver.