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 2003/09/12 16:07:30 UTC

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

remm        2003/09/12 07:07:30

  Modified:    catalina/src/share/org/apache/catalina/core
                        StandardContext.java
  Log:
  - Oops, the context classloader binding is wrong, which does not allow a
    reload (bug 23131).
  
  Revision  Changes    Path
  1.91      +11 -2     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.90
  retrieving revision 1.91
  diff -u -r1.90 -r1.91
  --- StandardContext.java	9 Sep 2003 15:27:00 -0000	1.90
  +++ StandardContext.java	12 Sep 2003 14:07:30 -0000	1.91
  @@ -4380,7 +4380,16 @@
   
           if (getLoader() != null) {
               if (reloadable && (getLoader().modified())) {
  -                reload();
  +                try {
  +                    Thread.currentThread().setContextClassLoader
  +                        (StandardContext.class.getClassLoader());
  +                    reload();
  +                } finally {
  +                    if (getLoader() != null) {
  +                        Thread.currentThread().setContextClassLoader
  +                            (getLoader().getClassLoader());
  +                    }
  +                }
               }
               if (getLoader() instanceof WebappLoader) {
                   ((WebappLoader) getLoader()).closeJARs(false);