Author: lukaszlenart Date: Tue Feb 19 11:45:45 2013 New Revision: 1447689 URL: http://svn.apache.org/r1447689 Log: WW-3984 Reverts some changes from previous commit
Modified: struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManager.java struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java Modified: struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManager.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManager.java?rev=1447689&r1=1447688&r2=1447689&view=diff ============================================================================== --- struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManager.java (original) +++ struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManager.java Tue Feb 19 11:45:45 2013 @@ -94,7 +94,7 @@ public class DefaultFileManager implemen LOG.debug("Creating revision for URL: " + fileName); } if (isJarURL(fileUrl)) { - revision = JarEntryRevision.build(normalizeToFileProtocol(fileUrl)); + revision = JarEntryRevision.build(normalizeToFileProtocol(fileUrl), this); } else { revision = FileRevision.build(fileUrl); } Modified: struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java?rev=1447689&r1=1447688&r2=1447689&view=diff ============================================================================== --- struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java (original) +++ struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/util/fs/JarEntryRevision.java Tue Feb 19 11:45:45 2013 @@ -1,5 +1,6 @@ package com.opensymphony.xwork2.util.fs; +import com.opensymphony.xwork2.FileManager; import com.opensymphony.xwork2.util.logging.Logger; import com.opensymphony.xwork2.util.logging.LoggerFactory; import org.apache.commons.io.FileUtils; @@ -23,7 +24,7 @@ public class JarEntryRevision extends Re private String fileNameInJar; private long lastModified; - public static Revision build(URL fileUrl) { + public static Revision build(URL fileUrl, FileManager fileManager) { // File within a Jar // Find separator index of jar filename and filename within jar String jarFileName = ""; @@ -44,9 +45,14 @@ public class JarEntryRevision extends Re int index = separatorIndex + JAR_FILE_NAME_SEPARATOR.length(); String fileNameInJar = fileName.substring(index).replaceAll("%20", " "); - JarFile jarFile = new JarFile(FileUtils.toFile(fileUrl)); - ZipEntry entry = jarFile.getEntry(fileNameInJar); - return new JarEntryRevision(jarFileName, fileNameInJar, entry.getTime()); + URL url = fileManager.normalizeToFileProtocol(fileUrl); + if (url != null) { + JarFile jarFile = new JarFile(FileUtils.toFile(url)); + ZipEntry entry = jarFile.getEntry(fileNameInJar); + return new JarEntryRevision(jarFileName, fileNameInJar, entry.getTime()); + } else { + return null; + } } catch (Throwable e) { if (LOG.isWarnEnabled()) { LOG.warn("Could not create JarEntryRevision for [#0]!", e, jarFileName);