You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by jf...@apache.org on 2004/03/25 23:31:46 UTC

cvs commit: jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/startup ContextConfig.java

jfarcand    2004/03/25 14:31:46

  Modified:    catalina/src/share/org/apache/catalina/core
                        StandardContext.java
               catalina/src/share/org/apache/catalina/startup
                        ContextConfig.java
  Log:
  Fix bugtraq : javax.naming.NamingException after a Stop/Start cycle of a web app
  
  Using jmx, if you stop/start the Context, listener and applicationListeners are removed when calling stop and never re-added.
  
  Revision  Changes    Path
  1.122     +4 -1      jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/core/StandardContext.java
  
  Index: StandardContext.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/core/StandardContext.java,v
  retrieving revision 1.121
  retrieving revision 1.122
  diff -u -r1.121 -r1.122
  --- StandardContext.java	24 Mar 2004 20:00:22 -0000	1.121
  +++ StandardContext.java	25 Mar 2004 22:31:46 -0000	1.122
  @@ -4542,6 +4542,9 @@
               broadcaster.sendNotification(notification);
           } 
           super.destroy();
  +
  +        instanceListeners = new String[0];
  +        applicationListeners = new String[0];
       }
       
       private void resetContext() throws Exception, MBeanRegistrationException {
  
  
  
  1.43      +1 -13     jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/startup/ContextConfig.java
  
  Index: ContextConfig.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/startup/ContextConfig.java,v
  retrieving revision 1.42
  retrieving revision 1.43
  diff -u -r1.42 -r1.43
  --- ContextConfig.java	24 Mar 2004 20:00:22 -0000	1.42
  +++ ContextConfig.java	25 Mar 2004 22:31:46 -0000	1.43
  @@ -659,12 +659,6 @@
               context.removeChild(children[i]);
           }
   
  -        // Removing application listeners
  -        String[] applicationListeners = context.findApplicationListeners();
  -        for (i = 0; i < applicationListeners.length; i++) {
  -            context.removeApplicationListener(applicationListeners[i]);
  -        }
  -
           // Removing application parameters
           /*
           ApplicationParameter[] applicationParameters =
  @@ -713,12 +707,6 @@
           FilterMap[] filterMaps = context.findFilterMaps();
           for (i = 0; i < filterMaps.length; i++) {
               context.removeFilterMap(filterMaps[i]);
  -        }
  -
  -        // Removing instance listeners
  -        String[] instanceListeners = context.findInstanceListeners();
  -        for (i = 0; i < instanceListeners.length; i++) {
  -            context.removeInstanceListener(instanceListeners[i]);
           }
   
           // Removing local ejbs
  
  
  

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