remm        02/04/13 05:36:34

  Modified:    catalina/src/share/org/apache/catalina/core
                        StandardContext.java
  Log:
  - Changes to the order of initialization and shutdown of the components
    (the manager mainly).
  - The ENC is now available during startup and shutdown of the manager
    (bug 7850). This does not appear to create problems.
  - Includes the patch for bug 7971 (submitted by Andreas Junghans <Andreas.Junghans 
at fh-karlsruhe.de>).
  
  Revision  Changes    Path
  1.104     +33 -32    
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core/StandardContext.java
  
  Index: StandardContext.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core/StandardContext.java,v
  retrieving revision 1.103
  retrieving revision 1.104
  diff -u -r1.103 -r1.104
  --- StandardContext.java      4 Apr 2002 20:30:34 -0000       1.103
  +++ StandardContext.java      13 Apr 2002 12:36:34 -0000      1.104
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core/StandardContext.java,v
 1.103 2002/04/04 20:30:34 craigmcc Exp $
  - * $Revision: 1.103 $
  - * $Date: 2002/04/04 20:30:34 $
  + * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core/StandardContext.java,v
 1.104 2002/04/13 12:36:34 remm Exp $
  + * $Revision: 1.104 $
  + * $Date: 2002/04/13 12:36:34 $
    *
    * ====================================================================
    *
  @@ -147,7 +147,7 @@
    *
    * @author Craig R. McClanahan
    * @author Remy Maucherat
  - * @version $Revision: 1.103 $ $Date: 2002/04/04 20:30:34 $
  + * @version $Revision: 1.104 $ $Date: 2002/04/13 12:36:34 $
    */
   
   public class StandardContext
  @@ -2377,6 +2377,15 @@
           // Binding thread
           ClassLoader oldCCL = bindThread();
   
  +        // Shut down our session manager
  +        if ((manager != null) && (manager instanceof Lifecycle)) {
  +            try {
  +                ((Lifecycle) manager).stop();
  +            } catch (LifecycleException e) {
  +                log(sm.getString("standardContext.stoppingManager"), e);
  +            }
  +        }
  +
           // Shut down the current version of all active servlets
           Container children[] = findChildren();
           for (int i = 0; i < children.length; i++) {
  @@ -2392,6 +2401,9 @@
               }
           }
   
  +        // Shut down application event listeners
  +        listenerStop();
  +
           // Clear all application-originated servlet context attributes
           if (context != null)
               context.clearAttributes();
  @@ -2399,18 +2411,6 @@
           // Shut down filters
           filterStop();
   
  -        // Shut down our session manager
  -        if ((manager != null) && (manager instanceof Lifecycle)) {
  -            try {
  -                ((Lifecycle) manager).stop();
  -            } catch (LifecycleException e) {
  -                log(sm.getString("standardContext.stoppingManager"), e);
  -            }
  -        }
  -
  -        // Shut down application event listeners
  -        listenerStop();
  -
           if (isUseNaming()) {
               // Start
               namingContextListener.lifecycleEvent
  @@ -3406,8 +3406,6 @@
                   // Binding thread
                   oldCCL = bindThread();
   
  -                if ((manager != null) && (manager instanceof Lifecycle))
  -                    ((Lifecycle) manager).start();
                   if ((cluster != null) && (cluster instanceof Lifecycle))
                       ((Lifecycle) cluster).start();
                   if ((realm != null) && (realm instanceof Lifecycle))
  @@ -3437,6 +3435,9 @@
                   // Notify our interested LifecycleListeners
                   lifecycle.fireLifecycleEvent(START_EVENT, null);
   
  +                if ((manager != null) && (manager instanceof Lifecycle))
  +                    ((Lifecycle) manager).start();
  +
               } finally {
                   // Unbinding thread
                   unbindThread(oldCCL);
  @@ -3454,6 +3455,13 @@
           // Binding thread
           oldCCL = bindThread();
   
  +        // Create context attributes that will be required
  +        if (ok) {
  +            if (debug >= 1)
  +                log("Posting standard context attributes");
  +            postWelcomeFiles();
  +        }
  +
           // Configure and call application event listeners and filters
           if (ok) {
               if (!listenerStart())
  @@ -3464,13 +3472,6 @@
                   ok = false;
           }
   
  -        // Create context attributes that will be required
  -        if (ok) {
  -            if (debug >= 1)
  -                log("Posting standard context attributes");
  -            postWelcomeFiles();
  -        }
  -
           // Load and initialize all "load on startup" servlets
           if (ok)
               loadOnStartup(findChildren());
  @@ -3523,6 +3524,10 @@
           // Finalize our character set mapper
           setCharsetMapper(null);
   
  +        if ((manager != null) && (manager instanceof Lifecycle)) {
  +            ((Lifecycle) manager).stop();
  +        }
  +
           // Normal container shutdown processing
           if (debug >= 1)
               log("Processing standard container shutdown");
  @@ -3551,6 +3556,9 @@
                       ((Lifecycle) mappers[(mappers.length-1)-i]).stop();
               }
   
  +            // Stop our application listeners
  +            listenerStop();
  +
               // Stop our subordinate components, if any
               if (resources != null) {
                   if (resources instanceof Lifecycle) {
  @@ -3580,13 +3588,6 @@
               if ((cluster != null) && (cluster instanceof Lifecycle)) {
                   ((Lifecycle) cluster).stop();
               }
  -            if ((manager != null) && (manager instanceof Lifecycle)) {
  -                ((Lifecycle) manager).stop();
  -            }
  -
  -            // Stop our application listeners
  -            listenerStop();
  -
               if ((logger != null) && (logger instanceof Lifecycle)) {
                   ((Lifecycle) logger).stop();
               }
  
  
  

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to