You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2010/02/11 16:14:56 UTC

svn commit: r909017 - in /tomcat/trunk/java/org/apache: catalina/loader/WebappClassLoader.java jasper/servlet/JspServletWrapper.java

Author: markt
Date: Thu Feb 11 15:14:55 2010
New Revision: 909017

URL: http://svn.apache.org/viewvc?rev=909017&view=rev
Log:
More memory leak prevention - ResourceBundle

Modified:
    tomcat/trunk/java/org/apache/catalina/loader/WebappClassLoader.java
    tomcat/trunk/java/org/apache/jasper/servlet/JspServletWrapper.java

Modified: tomcat/trunk/java/org/apache/catalina/loader/WebappClassLoader.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/loader/WebappClassLoader.java?rev=909017&r1=909016&r2=909017&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/loader/WebappClassLoader.java (original)
+++ tomcat/trunk/java/org/apache/catalina/loader/WebappClassLoader.java Thu Feb 11 15:14:55 2010
@@ -47,6 +47,7 @@
 import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.ResourceBundle;
 import java.util.Vector;
 import java.util.concurrent.ThreadPoolExecutor;
 import java.util.jar.Attributes;
@@ -1773,6 +1774,9 @@
             org.apache.juli.logging.LogFactory.release(this);
         }
         
+        // Clear any cached resource bundles
+        ResourceBundle.clearCache(this);
+
         // Clear the classloader reference in the VM's bean introspector
         java.beans.Introspector.flushCaches();
 

Modified: tomcat/trunk/java/org/apache/jasper/servlet/JspServletWrapper.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jasper/servlet/JspServletWrapper.java?rev=909017&r1=909016&r2=909017&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/jasper/servlet/JspServletWrapper.java (original)
+++ tomcat/trunk/java/org/apache/jasper/servlet/JspServletWrapper.java Thu Feb 11 15:14:55 2010
@@ -20,6 +20,7 @@
 import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.net.URL;
+import java.util.ResourceBundle;
 
 import javax.servlet.Servlet;
 import javax.servlet.ServletConfig;
@@ -416,6 +417,9 @@
 
     public void destroy() {
         if (theServlet != null) {
+            // Memory leak prevention - ResourceBundle caches resources based
+            // on class loader
+            ResourceBundle.clearCache(ctxt.getJspLoader());
             theServlet.destroy();
             InstanceManager instanceManager = InstanceManagerFactory.getInstanceManager(config);
             try {



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org