Log Message: |
Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=55317
Merged revisions 1526730, 1538833, 1539180, 1691487 from tomcat/trunk:
- Facilitate weaving by allowing ClassFileTransformer to be added to WebppClassLoader. Patch be Nick Williams
- Rename. Loader is a poor choice as there is a separate Loader component
- Review of r1539036 by Nick Williams.
copyWithoutTransformers(), as defined in the interface InstrumentableClassLoader, returns a ClassLoader. The start() method is not defined in ClassLoader, it is specific to WebappClassLoader. Furthermore, code calling copyWithoutTransformers() won't have access to WebappClassLoader to call start() reflectively if a SecurityManager is enabled.
So, the copyWithoutTransformers() method needs to call start() before it returns the copied class loader. Otherwise, it will be useless to JPA providers and the like.
- Corrected the Tomcat 7 version where this interface was introduced for the first time
|