[jboss-cvs] JBossAS SVN: r59848 - projects/aop/trunk/aop/src/main/org/jboss/aop.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Fri Jan 19 12:52:54 EST 2007
Author: flavia.rainone at jboss.com
Date: 2007-01-19 12:52:54 -0500 (Fri, 19 Jan 2007)
New Revision: 59848
Modified:
projects/aop/trunk/aop/src/main/org/jboss/aop/AdvisorFactory.java
projects/aop/trunk/aop/src/main/org/jboss/aop/AspectManager.java
Log:
[JBAOP-348] Fast fix for the problem. Needs further investigation before closing the issue, though.
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/AdvisorFactory.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/AdvisorFactory.java 2007-01-19 17:05:21 UTC (rev 59847)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/AdvisorFactory.java 2007-01-19 17:52:54 UTC (rev 59848)
@@ -112,7 +112,7 @@
{
Method getAdvisor = loadedClass.getMethod(GeneratedAdvisorInstrumentor.GET_CLASS_ADVISOR, NO_ARGS);
ClassAdvisor advisor = (ClassAdvisor)getAdvisor.invoke(null, null);
- if (advisor.getClazz() == loadedClass)
+ if (advisor != null && advisor.getClazz() == loadedClass)
{
//Sub classes may not be instrumented, in which case we have the super class advisor here, which we don't want
return advisor;
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/AspectManager.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/AspectManager.java 2007-01-19 17:05:21 UTC (rev 59847)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/AspectManager.java 2007-01-19 17:52:54 UTC (rev 59848)
@@ -1088,7 +1088,15 @@
{
Field field = superClass.getDeclaredField(Instrumentor.HELPER_FIELD_NAME);
SecurityActions.setAccessible(field);
- return (ClassAdvisor) field.get(null);
+ advisor = (ClassAdvisor) field.get(null);
+ if (advisor != null)
+ {
+ return advisor;
+ }
+ else
+ {
+ break;
+ }
}
catch (NoSuchFieldException e)
{
More information about the jboss-cvs-commits
mailing list