[jboss-cvs] JBossAS SVN: r60386 - branches/Branch_4_0/aspects/src/main/org/jboss/aop/deployment.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Feb 7 11:35:13 EST 2007


Author: kabir.khan at jboss.com
Date: 2007-02-07 11:35:13 -0500 (Wed, 07 Feb 2007)
New Revision: 60386

Modified:
   branches/Branch_4_0/aspects/src/main/org/jboss/aop/deployment/AspectManagerService.java
Log:
[JBAOP-357] Preload HeirarchicalLoaderRepository3 so that JRockit does not need to load up that class as part of weaving classes

+ better logging of what classes failed

Modified: branches/Branch_4_0/aspects/src/main/org/jboss/aop/deployment/AspectManagerService.java
===================================================================
--- branches/Branch_4_0/aspects/src/main/org/jboss/aop/deployment/AspectManagerService.java	2007-02-07 16:34:30 UTC (rev 60385)
+++ branches/Branch_4_0/aspects/src/main/org/jboss/aop/deployment/AspectManagerService.java	2007-02-07 16:35:13 UTC (rev 60386)
@@ -47,6 +47,8 @@
 import org.jboss.aop.hook.JDK14Transformer;
 import org.jboss.aop.hook.JDK14TransformerManager;
 import org.jboss.aop.instrument.InstrumentorFactory;
+import org.jboss.aop.instrument.TransformerCommon;
+import org.jboss.mx.loading.HeirarchicalLoaderRepository3;
 import org.jboss.mx.server.ServerConstants;
 import org.jboss.mx.util.ObjectNameFactory;
 import org.jboss.system.ServiceMBeanSupport;
@@ -63,6 +65,14 @@
 {
    public static final ObjectName DEFAULT_LOADER_REPOSITORY = ObjectNameFactory.create(ServerConstants.DEFAULT_LOADER_NAME);
 
+   static {
+      //pre-load necessary classes so that we avoid NoClassDefFoundErrors on JRockit when using the RepositoryClassloader hook
+      //When AspectManager.translate() is called the first time, these classes have not been loaded yet, and this is what causes
+      //JRockit to get confused
+      Class clazz = TransformerCommon.class;
+      clazz = HeirarchicalLoaderRepository3.class;
+   }
+
    // Attributes ---------------------------------------------------
 
    boolean created = false;
@@ -217,7 +227,7 @@
             }
             catch (Exception e)
             {
-               throw new RuntimeException(e);
+               throw new RuntimeException("Error converting " + classname + " on " + loader, e);
             }
          }
       };




More information about the jboss-cvs-commits mailing list