/[Apache-SVN]/tomcat/container/tc5.5.x/catalina/src/share/org/apache/catalina/loader/WebappClassLoader.java
ViewVC logotype

Diff of /tomcat/container/tc5.5.x/catalina/src/share/org/apache/catalina/loader/WebappClassLoader.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

--- tomcat/container/tc5.5.x/catalina/src/share/org/apache/catalina/loader/WebappClassLoader.java	2005/11/23 14:20:02	348447
+++ tomcat/container/tc5.5.x/catalina/src/share/org/apache/catalina/loader/WebappClassLoader.java	2005/11/23 14:20:32	348448
@@ -835,6 +835,11 @@ public class WebappClassLoader
         if (log.isDebugEnabled())
             log.debug("    findClass(" + name + ")");
 
+        // Cannot load anything from local repositories if class loader is stopped
+        if (!started) {
+            throw new ClassNotFoundException(name);
+        }
+
         // (1) Permission to define this class when using a SecurityManager
         if (securityManager != null) {
             int i = name.lastIndexOf('.');
@@ -1227,10 +1232,13 @@ public class WebappClassLoader
             log.debug("loadClass(" + name + ", " + resolve + ")");
         Class clazz = null;
 
-        // Don't load classes if class loader is stopped
+        // Log access to stopped classloader
         if (!started) {
-            log.info(sm.getString("webappClassLoader.stopped", name));
-            throw new ThreadDeath();
+            try {
+                throw new IllegalStateException();
+            } catch (IllegalStateException e) {
+                log.info(sm.getString("webappClassLoader.stopped", name), e);
+            }
         }
 
         // (0) Check our previously loaded local class cache

 

infrastructure at apache.org
ViewVC Help
Powered by ViewVC 1.1.26