remm 02/02/19 19:18:32 Modified: catalina/src/share/org/apache/catalina/startup Tag: tomcat_40_branch ContextConfig.java Log: - Fix bug 6090. WEB-INF will now be scanned for TLD files containing listeners. Revision Changes Path No revision No revision 1.52.2.1 +27 -12 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.52 retrieving revision 1.52.2.1 diff -u -r1.52 -r1.52.2.1 --- ContextConfig.java 4 Sep 2001 18:15:30 -0000 1.52 +++ ContextConfig.java 20 Feb 2002 03:18:32 -0000 1.52.2.1 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/ContextConfig.java,v 1.52 2001/09/04 18:15:30 craigmcc Exp $ - * $Revision: 1.52 $ - * $Date: 2001/09/04 18:15:30 $ + * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/ContextConfig.java,v 1.52.2.1 2002/02/20 03:18:32 remm Exp $ + * $Revision: 1.52.2.1 $ + * $Date: 2002/02/20 03:18:32 $ * * ==================================================================== * @@ -128,7 +128,7 @@ * of that Context, and the associated defined servlets. * * @author Craig R. McClanahan - * @version $Revision: 1.52 $ $Date: 2001/09/04 18:15:30 $ + * @version $Revision: 1.52.2.1 $ $Date: 2002/02/20 03:18:32 $ */ public final class ContextConfig @@ -1044,27 +1044,42 @@ } - // Second, scan tag libraries defined in JAR files - // FIXME - Yet another dependence on files + DirContext resources = context.getResources(); + + // Second, scan tag libraries defined in tld files in /WEB-INF + if (debug >= 1) + log("Scanning TLD files in /WEB-INF"); + String webinfName = "/WEB-INF"; + // Looking up directory /WEB-INF in the context + try { + NamingEnumeration enum = resources.list(webinfName); + while (enum.hasMoreElements()) { + NameClassPair ncPair = (NameClassPair) enum.nextElement(); + String filename = webinfName + "/" + ncPair.getName(); + if (!filename.endsWith(".tld")) + continue; + tldConfigTld(filename, mapper); + } + } catch (NamingException e) { + // Silent catch: it's valid that no /WEB-INF directory exists + } + + // Third, scan tag libraries defined in JAR files if (debug >= 1) log("Scanning library JAR files"); - DirContext resources = context.getResources(); String libName = "/WEB-INF/lib"; - DirContext libDir = null; // Looking up directory /WEB-INF/lib in the context try { NamingEnumeration enum = resources.list(libName); while (enum.hasMoreElements()) { - NameClassPair ncPair = - (NameClassPair) enum.nextElement(); + 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 + // Silent catch: it's valid that no /WEB-INF/lib directory exists } }
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>