remm        01/01/24 11:23:12

  Modified:    catalina/src/share/org/apache/catalina/startup
                        ContextConfig.java
  Log:
  - Replace some FS spcific code with access through a directory context.
  - I ran Watchdog 4 again, and everything was still running fine. Since Watchdog is
    supposed to use that code (it's loading a TLD file from a JAR), I assume it's
    working fine.
  
  Revision  Changes    Path
  1.40      +24 -25    
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/ContextConfig.java
  
  Index: ContextConfig.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/ContextConfig.java,v
  retrieving revision 1.39
  retrieving revision 1.40
  diff -u -r1.39 -r1.40
  --- ContextConfig.java        2001/01/24 02:35:00     1.39
  +++ ContextConfig.java        2001/01/24 19:23:09     1.40
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/ContextConfig.java,v
 1.39 2001/01/24 02:35:00 remm Exp $
  - * $Revision: 1.39 $
  - * $Date: 2001/01/24 02:35:00 $
  + * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/ContextConfig.java,v
 1.40 2001/01/24 19:23:09 remm Exp $
  + * $Revision: 1.40 $
  + * $Date: 2001/01/24 19:23:09 $
    *
    * ====================================================================
    *
  @@ -83,6 +83,10 @@
   import java.util.jar.JarEntry;
   import java.util.jar.JarFile;
   import javax.servlet.ServletContext;
  +import javax.naming.NamingException;
  +import javax.naming.NameClassPair;
  +import javax.naming.NamingEnumeration;
  +import javax.naming.directory.DirContext;
   import org.apache.naming.resources.DirContextURLStreamHandler;
   import org.apache.catalina.Authenticator;
   import org.apache.catalina.Context;
  @@ -112,7 +116,7 @@
    * of that Context, and the associated defined servlets.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.39 $ $Date: 2001/01/24 02:35:00 $
  + * @version $Revision: 1.40 $ $Date: 2001/01/24 19:23:09 $
    */
   
   public final class ContextConfig
  @@ -861,29 +865,24 @@
           // FIXME - Yet another dependence on files
           if (debug >= 1)
               log("Scanning library JAR files");
  -     ServletContext servletContext = context.getServletContext();
  -        URL libURL = null;
  +        DirContext resources = context.getResources();
  +        String libName = "/WEB-INF/lib";
  +        DirContext libDir = null;
  +        // Looking up directory /WEB-INF/lib in the context
           try {
  -            libURL = servletContext.getResource("/WEB-INF/lib");
  -        } catch (MalformedURLException e) {
  -            ;
  +            NamingEnumeration enum = resources.list(libName);
  +            while (enum.hasMoreElements()) {
  +                NameClassPair ncPair = 
  +                    (NameClassPair) enum.nextElement();
  +                String filename = libName + "/" + ncPair.getName();
  +                if (!filename.endsWith(".jar"))
  +                    continue;
  +                tldConfigJar(filename, mapper);
  +            }
  +        } catch (NamingException e) {
  +            // Silent catch: it's valid that no /WEB-INF/lib directory 
  +            //exists
           }
  -
  -     if ((libURL != null) && "file".equals(libURL.getProtocol())) {
  -         File libFile = new File(libURL.getFile());
  -         if (libFile.exists() && libFile.canRead() &&
  -             libFile.isDirectory()) {
  -             String filenames[] = libFile.list();
  -             for (int i = 0; i < filenames.length; i++) {
  -                 if (!filenames[i].endsWith(".jar"))
  -                     continue;
  -                    String resourcePath = "/WEB-INF/lib/" + filenames[i];
  -                    if (debug >= 2)
  -                        log("  Trying '" + resourcePath + "'");
  -                    tldConfigJar("/WEB-INF/lib/" + filenames[i], mapper);
  -             }
  -         }
  -     }
   
       }
   
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]

Reply via email to