You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by cj...@apache.org on 2011/03/01 13:53:34 UTC
svn commit: r1075797 -
/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/util/Classpath.java
Author: cjhoward
Date: Tue Mar 1 12:53:34 2011
New Revision: 1075797
URL: http://svn.apache.org/viewvc?rev=1075797&view=rev
Log:
Some classloaders may report META-INF/ exists when it does not, so ignore such a case.
Modified:
myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/util/Classpath.java
Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/util/Classpath.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/util/Classpath.java?rev=1075797&r1=1075796&r2=1075797&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/util/Classpath.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/util/Classpath.java Tue Mar 1 12:53:34 2011
@@ -76,10 +76,21 @@ public final class Classpath
conn.setUseCaches(false);
conn.setDefaultUseCaches(false);
- JarFile jar;
+ JarFile jar = null;
if (conn instanceof JarURLConnection)
{
- jar = ((JarURLConnection) conn).getJarFile();
+ try {
+ jar = ((JarURLConnection) conn).getJarFile();
+ }
+
+ catch (Throwable e) {
+ // This can happen if the classloader provided us a URL that it thinks exists
+ // but really doesn't. In particular, if a JAR contains META-INF/MANIFEST.MF
+ // but not META-INF/, some classloaders may incorrectly report that META-INF/
+ // exists and we'll end up here. Just ignore this case.
+
+ continue;
+ }
}
else
{