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