[jboss-svn-commits] JBoss Common SVN: r2257 - common-core/trunk/src/main/java/org/jboss/util/loading.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Feb 5 12:43:15 EST 2007


Author: scott.stark at jboss.org
Date: 2007-02-05 12:43:15 -0500 (Mon, 05 Feb 2007)
New Revision: 2257

Modified:
   common-core/trunk/src/main/java/org/jboss/util/loading/DelegatingClassLoader.java
Log:
JBAS-3691, try findLoadedClass on CNFE to pickup $Proxy resolution behavior required by some VMs.

Modified: common-core/trunk/src/main/java/org/jboss/util/loading/DelegatingClassLoader.java
===================================================================
--- common-core/trunk/src/main/java/org/jboss/util/loading/DelegatingClassLoader.java	2007-02-02 15:39:23 UTC (rev 2256)
+++ common-core/trunk/src/main/java/org/jboss/util/loading/DelegatingClassLoader.java	2007-02-05 17:43:15 UTC (rev 2257)
@@ -86,7 +86,19 @@
          return super.loadClass(className, resolve);
 
       // Ask the parent
-      Class clazz = getParent().loadClass(className);
+      Class clazz = null;
+      try
+      {
+         clazz = getParent().loadClass(className);
+      }
+      catch (ClassNotFoundException e)
+      {
+         // Not found in parent,
+         // maybe it is a proxy registered against this classloader?
+         clazz = findLoadedClass(className);
+         if (clazz == null)
+            throw e;
+      }
 
       // Link the class
       if (resolve)




More information about the jboss-svn-commits mailing list