markt 2005/08/17 14:21:37 Modified: catalina/src/share/org/apache/catalina/ssi ExpressionTokenizer.java SSIFlastmod.java SSIServletExternalResolver.java Log: Fix handling of non-file based includes with SSI - Patch submitted by David Becker Removed unused code in package o.a.c.ssi (Eclipse) Revision Changes Path 1.3 +1 -2 jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/ssi/ExpressionTokenizer.java Index: ExpressionTokenizer.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/ssi/ExpressionTokenizer.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- ExpressionTokenizer.java 1 Sep 2004 18:33:33 -0000 1.2 +++ ExpressionTokenizer.java 17 Aug 2005 21:21:37 -0000 1.3 @@ -34,7 +34,6 @@ public static final int TOKEN_LT = 11; public static final int TOKEN_END = 12; private char[] expr; - private int tokenType = TOKEN_STRING; private String tokenVal = null; private int index; private int length; 1.6 +1 -2 jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/ssi/SSIFlastmod.java Index: SSIFlastmod.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/ssi/SSIFlastmod.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- SSIFlastmod.java 23 Apr 2005 10:22:37 -0000 1.5 +++ SSIFlastmod.java 17 Aug 2005 21:21:37 -0000 1.6 @@ -33,7 +33,6 @@ String[] paramNames, String[] paramValues, PrintWriter writer) { long lastModified = 0; String configErrMsg = ssiMediator.getConfigErrMsg(); - StringBuffer buf = new StringBuffer(); for (int i = 0; i < paramNames.length; i++) { String paramName = paramNames[i]; String paramValue = paramValues[i]; 1.8 +15 -7 jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/ssi/SSIServletExternalResolver.java Index: SSIServletExternalResolver.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/ssi/SSIServletExternalResolver.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- SSIServletExternalResolver.java 30 Apr 2005 17:20:50 -0000 1.7 +++ SSIServletExternalResolver.java 17 Aug 2005 21:21:37 -0000 1.8 @@ -244,7 +244,7 @@ uriEncoding = ((Request)req).getConnector().getURIEncoding(); useBodyEncodingForURI = ((Request)req) - .getConnector().getUseBodyEncodingForURI(); + .getConnector().getUseBodyEncodingForURI(); } // If valid, apply settings from request / connector @@ -394,7 +394,7 @@ protected ServletContextAndPath getServletContextAndPathFromVirtualPath( String virtualPath) throws IOException { - String path = null; + if (!virtualPath.startsWith("/") && !virtualPath.startsWith("\\")) { return new ServletContextAndPath(context, getAbsolutePath(virtualPath)); @@ -475,16 +475,24 @@ public long getFileLastModified(String path, boolean virtual) throws IOException { long lastModified = 0; - URLConnection urlConnection = getURLConnection(path, virtual); - lastModified = urlConnection.getLastModified(); + try { + URLConnection urlConnection = getURLConnection(path, virtual); + lastModified = urlConnection.getLastModified(); + } catch (IOException e) { + // Ignore this. It will always fail for non-file based includes + } return lastModified; } public long getFileSize(String path, boolean virtual) throws IOException { long fileSize = -1; - URLConnection urlConnection = getURLConnection(path, virtual); - fileSize = urlConnection.getContentLength(); + try { + URLConnection urlConnection = getURLConnection(path, virtual); + fileSize = urlConnection.getContentLength(); + } catch (IOException e) { + // Ignore this. It will always fail for non-file based includes + } return fileSize; }
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]