remm 2003/07/20 07:52:17 Modified: catalina/src/share/org/apache/catalina/core StandardContext.java Log: - Correctly update the mapper. The previous code was not compatible with the invoker servlet and its dynamically added wrappers. Revision Changes Path 1.71 +7 -22 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.70 retrieving revision 1.71 diff -u -r1.70 -r1.71 --- StandardContext.java 14 Jul 2003 10:54:11 -0000 1.70 +++ StandardContext.java 20 Jul 2003 14:52:17 -0000 1.71 @@ -1938,6 +1938,10 @@ } Wrapper wrapper = (Wrapper) findChild(name); wrapper.addMapping(pattern); + + // Update context mapper + mapper.addWrapper(pattern, wrapper); + fireContainerEvent("addServletMapping", pattern); } @@ -3373,6 +3377,7 @@ if( wrapper != null ) { wrapper.removeMapping(pattern); } + mapper.removeWrapper(pattern); fireContainerEvent("removeServletMapping", pattern); } @@ -4039,16 +4044,6 @@ // Notify our interested LifecycleListeners lifecycle.fireLifecycleEvent(START_EVENT, null); - children = findChildren(); - for (int i = 0; i < children.length; i++) { - // Updating associated mapper - Wrapper wrapper = (Wrapper) children[i]; - String[] mappings = wrapper.findMappings(); - for (int j = 0; j < mappings.length; j++) { - mapper.addWrapper(mappings[j], wrapper); - } - } - if ((manager != null) && (manager instanceof Lifecycle)) { ((Lifecycle) manager).start(); } @@ -4235,16 +4230,6 @@ ((Lifecycle) manager).stop(); } - // Updating associated mapper - Container children[] = findChildren(); - for (int i = 0; i < children.length; i++) { - Wrapper wrapper = (Wrapper) children[i]; - String[] mappings = wrapper.findMappings(); - for (int j = 0; j < mappings.length; j++) { - mapper.removeWrapper(mappings[j]); - } - } - // Normal container shutdown processing if (log.isDebugEnabled()) log.debug("Processing standard container shutdown"); @@ -4260,7 +4245,7 @@ } // Stop our child containers, if any - children = findChildren(); + Container[] children = findChildren(); for (int i = 0; i < children.length; i++) { if (children[i] instanceof Lifecycle) ((Lifecycle) children[i]).stop();
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]