You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by re...@apache.org on 2005/03/02 19:14:06 UTC

cvs commit: jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/core StandardContext.java

remm        2005/03/02 10:14:06

  Modified:    catalina/src/share/org/apache/catalina/core
                        StandardContext.java
  Log:
  - Fix context classloader binding during loader initialization (it was set to null before).
  - The webapp loader should only be retrieved when the context classloader is set to the webapp's classloader. The initialization of
    StandardContainer violates this by having its basic valve instantiated, which in turns gets the logger right away. This means it will use
    whatever logging configuration is defined for the server classloader :(
  
  Revision  Changes    Path
  1.166     +7 -5      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.165
  retrieving revision 1.166
  diff -u -r1.165 -r1.166
  --- StandardContext.java	24 Feb 2005 17:11:06 -0000	1.165
  +++ StandardContext.java	2 Mar 2005 18:14:06 -0000	1.166
  @@ -4007,8 +4007,6 @@
                   // Start our subordinate components, if any
                   if ((loader != null) && (loader instanceof Lifecycle))
                       ((Lifecycle) loader).start();
  -                if ((logger != null) && (logger instanceof Lifecycle))
  -                    ((Lifecycle) logger).start();
   
                   // Unbinding thread
                   unbindThread(oldCCL);
  @@ -4016,6 +4014,8 @@
                   // Binding thread
                   oldCCL = bindThread();
   
  +                if ((logger != null) && (logger instanceof Lifecycle))
  +                    ((Lifecycle) logger).start();
                   if ((cluster != null) && (cluster instanceof Lifecycle))
                       ((Lifecycle) cluster).start();
                   if ((realm != null) && (realm instanceof Lifecycle))
  @@ -4483,8 +4483,10 @@
           if (getResources() == null)
               return oldContextClassLoader;
   
  -        Thread.currentThread().setContextClassLoader
  -            (getLoader().getClassLoader());
  +        if (getLoader().getClassLoader() != null) {
  +            Thread.currentThread().setContextClassLoader
  +                (getLoader().getClassLoader());
  +        }
   
           DirContextURLStreamHandler.bind(getResources());
   
  
  
  

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