Author: jgallimore
Date: Sat Jan 16 18:12:01 2010
New Revision: 900008

URL: http://svn.apache.org/viewvc?rev=900008&view=rev
Log:
1131 JDK 1.6.0 u18 uses Strings instead of URLs in the Sun JarFileFactory cache

Modified:
    
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/ClassLoaderUtil.java

Modified: 
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/ClassLoaderUtil.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/ClassLoaderUtil.java?rev=900008&r1=900007&r2=900008&view=diff
==============================================================================
--- 
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/ClassLoaderUtil.java
 (original)
+++ 
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/ClassLoaderUtil.java
 Sat Jan 16 18:12:01 2010
@@ -170,8 +170,16 @@
 
             List<URL> urls = new ArrayList<URL>();
             for (Object item : fileCache.keySet()) {
-                URL url = (URL) item;
-                if (isParent(jarLocation, URLs.toFile(url))) {
+                URL url = null;
+                if (item instanceof URL) {
+                    url = (URL) item;
+                } else if (item instanceof String) {
+                    url = new URL((String) item);
+                } else {
+                    logger.warning("Don't know how to handle object: " + 
item.toString() + " of type: " + item.getClass().getCanonicalName() + " in Sun 
JarFileFactory cache, skipping");
+                }
+
+                if (url != null && isParent(jarLocation, URLs.toFile(url))) {
                     urls.add(url);
                 }
             }


Reply via email to