remm 01/01/14 11:51:01 Modified: catalina/src/share/org/apache/naming/resources FileDirContext.java ProxyDirContext.java Log: - Added some extra checks to prevent exceptions when trying to list contents of unreadable directories. - Fix bug with type wrapping in the proxy context when doing a lookup. Revision Changes Path 1.5 +8 -4 jakarta-tomcat-4.1/catalina/src/share/org/apache/naming/resources/FileDirContext.java Index: FileDirContext.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-4.1/catalina/src/share/org/apache/naming/resources/FileDirContext.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- FileDirContext.java 2001/01/13 21:17:05 1.4 +++ FileDirContext.java 2001/01/14 19:51:00 1.5 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-tomcat-4.1/catalina/src/share/org/apache/naming/resources/FileDirContext.java,v 1.4 2001/01/13 21:17:05 remm Exp $ - * $Revision: 1.4 $ - * $Date: 2001/01/13 21:17:05 $ + * $Header: /home/cvs/jakarta-tomcat-4.1/catalina/src/share/org/apache/naming/resources/FileDirContext.java,v 1.5 2001/01/14 19:51:00 remm Exp $ + * $Revision: 1.5 $ + * $Date: 2001/01/14 19:51:00 $ * * ==================================================================== * @@ -98,7 +98,7 @@ * Filesystem Directory Context implementation helper class. * * @author Remy Maucherat - * @version $Revision: 1.4 $ $Date: 2001/01/13 21:17:05 $ + * @version $Revision: 1.5 $ $Date: 2001/01/14 19:51:00 $ */ public class FileDirContext extends BaseDirContext { @@ -884,7 +884,11 @@ protected Vector list(File file) { Vector entries = new Vector(); + if (!file.isDirectory()) + return entries; String[] names = file.list(); + if (names == null) + return entries; NamingEntry entry = null; for (int i = 0; i < names.length; i++) { 1.3 +13 -6 jakarta-tomcat-4.1/catalina/src/share/org/apache/naming/resources/ProxyDirContext.java Index: ProxyDirContext.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-4.1/catalina/src/share/org/apache/naming/resources/ProxyDirContext.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- ProxyDirContext.java 2001/01/13 21:19:12 1.2 +++ ProxyDirContext.java 2001/01/14 19:51:00 1.3 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-tomcat-4.1/catalina/src/share/org/apache/naming/resources/ProxyDirContext.java,v 1.2 2001/01/13 21:19:12 remm Exp $ - * $Revision: 1.2 $ - * $Date: 2001/01/13 21:19:12 $ + * $Header: /home/cvs/jakarta-tomcat-4.1/catalina/src/share/org/apache/naming/resources/ProxyDirContext.java,v 1.3 2001/01/14 19:51:00 remm Exp $ + * $Revision: 1.3 $ + * $Date: 2001/01/14 19:51:00 $ * * ==================================================================== * @@ -66,6 +66,7 @@ import java.util.Hashtable; import java.io.InputStream; +import java.io.ByteArrayInputStream; import javax.naming.Context; import javax.naming.Name; import javax.naming.NameParser; @@ -82,7 +83,7 @@ * Proxy Directory Context implementation. * * @author Remy Maucherat - * @version $Revision: 1.2 $ $Date: 2001/01/13 21:19:12 $ + * @version $Revision: 1.3 $ $Date: 2001/01/14 19:51:00 $ */ public class ProxyDirContext implements DirContext { @@ -164,10 +165,16 @@ public Object lookup(String name) throws NamingException { Object object = dirContext.lookup(parseName(name)); - if (object instanceof InputStream) + if (object instanceof InputStream) { return new Resource((InputStream) object); - else + } if (object instanceof DirContext) { return object; + } if (object instanceof Resource) { + return object; + } else { + return new Resource(new ByteArrayInputStream + (object.toString().getBytes())); + } } --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]