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/04/08 21:41:56 UTC

cvs commit: jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/loader WebappLoader.java

remm        2003/04/08 12:41:56

  Modified:    catalina/src/share/org/apache/catalina/loader
                        WebappLoader.java
  Log:
  - Allow setting the compiler classpath directly.
  
  Revision  Changes    Path
  1.13      +16 -10    jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/loader/WebappLoader.java
  
  Index: WebappLoader.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/loader/WebappLoader.java,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- WebappLoader.java	20 Mar 2003 05:43:48 -0000	1.12
  +++ WebappLoader.java	8 Apr 2003 19:41:56 -0000	1.13
  @@ -865,16 +865,12 @@
           WebappClassLoader classLoader = null;
   
           if (parentClassLoader == null) {
  -            // Will cause a ClassCast is the class does not extend WCL, but
  -            // this is on purpose (the exception will be caught and rethrown)
  -            log.info( "Creating loader with no parent ");
  -            classLoader = (WebappClassLoader) clazz.newInstance();
  -        } else {
  -            Class[] argTypes = { ClassLoader.class };
  -            Object[] args = { parentClassLoader };
  -            Constructor constr = clazz.getConstructor(argTypes);
  -            classLoader = (WebappClassLoader) constr.newInstance(args);
  +            parentClassLoader = Thread.currentThread().getContextClassLoader();
           }
  +        Class[] argTypes = { ClassLoader.class };
  +        Object[] args = { parentClassLoader };
  +        Constructor constr = clazz.getConstructor(argTypes);
  +        classLoader = (WebappClassLoader) constr.newInstance(args);
   
           return classLoader;
   
  @@ -1193,6 +1189,16 @@
               ((Context) container).getServletContext();
           if (servletContext == null)
               return;
  +
  +        if (container instanceof StandardContext) {
  +            String baseClasspath = 
  +                ((StandardContext) container).getCompilerClasspath();
  +            if (baseClasspath != null) {
  +                servletContext.setAttribute(Globals.CLASS_PATH_ATTR,
  +                                            baseClasspath);
  +                return;
  +            }
  +        }
   
           StringBuffer classpath = new StringBuffer();
   
  
  
  

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