exception during instrumentation
hengels May 18, 2005 4:14 AMHi,
I'm seeing another execption during method instrumentation. This time, the reason is not so obvious to me. Maybe someone could have a look at this:
[aopc] [debug] is advisable method: kopiereMitBeziehungen [aopc] [debug] does kopiereMitBeziehungen match execution(* wilken.basismodul.*->*(..)): false [aopc] [debug] does kopiereMitBeziehungen match execution(* wilken.informationssystem.*->*(..)): true [aopc] javassist.CannotCompileException: [source error] Method wilken$informationssystem$berechtigung$BerichtBearbeitenBerechtigungImpl$getId$aop not found in wilken.informationssystem.berechtigung.BerichtBearbeitenBerechtigungImpl [aopc] at javassist.CtBehavior.setBody(CtBehavior.java:194) [aopc] at javassist.CtBehavior.setBody(CtBehavior.java:163) [aopc] at org.jboss.aop.instrument.MethodExecutionTransformer.optimized(MethodExecutionTransformer.java:365) [aopc] at org.jboss.aop.instrument.MethodExecutionTransformer.instrument(MethodExecutionTransformer.java:199) [aopc] at org.jboss.aop.instrument.Instrumentor.transform(Instrumentor.java:573) [aopc] at org.jboss.aop.AspectManager.translate(AspectManager.java:572) [aopc] at org.jboss.aop.AspectManager.transform(AspectManager.java:490) [aopc] at org.jboss.aop.standalone.Compiler.compileFile(Compiler.java:258) [aopc] at org.jboss.aop.standalone.Compiler.compile(Compiler.java:191) [aopc] at org.jboss.aop.standalone.Compiler.main(Compiler.java:68) [aopc] java.lang.RuntimeException: failed to transform: wilken.informationssystem.berechtigung.BerichtBearbeitenBerechtigungImpl [aopc] at org.jboss.aop.instrument.Instrumentor.transform(Instrumentor.java:625) [aopc] at org.jboss.aop.AspectManager.translate(AspectManager.java:572) [aopc] at org.jboss.aop.AspectManager.transform(AspectManager.java:490) [aopc] at org.jboss.aop.standalone.Compiler.compileFile(Compiler.java:258) [aopc] at org.jboss.aop.standalone.Compiler.compile(Compiler.java:191) [aopc] at org.jboss.aop.standalone.Compiler.main(Compiler.java:68) [aopc] Caused by: java.lang.RuntimeException: code was: { if (aop$MethodInfo_getId_N_6040770469254561000.interceptors != (Object[])null || (_instanceAdvisor != null && _instanceAdvisor.hasInstanceAspects)) { org.jboss.aop.advice.Interceptor[] interceptors = aop$MethodInfo_getId_N_6040770469254561000.interceptors; if (_instanceAdvisor != null) { interceptors = _instanceAdvisor.getInterceptors(interceptors); } wilken.informationssystem.berechtigung.BerichtBearbeitenBerechtigungImpl_getId_N6040770469254561000_OptimizedMethodInvocation invocation = new wilken.informationssystem.berechtigung.BerichtBearbeitenBerechtigungImpl_getId_N6040770469254561000_OptimizedMethodInvocation(aop$MethodInfo_getId_N_6040770469254561000, interceptors); invocation.setTargetObject(this); invocation.typedTargetObject = this; invocation.setAdvisor(aop$classAdvisor$aop); return ($r)invocation.invokeNext(); } else { return wilken$informationssystem$berechtigung$BerichtBearbeitenBerechtigungImpl$getId$aop($$); }} for method getId [aopc] at org.jboss.aop.instrument.MethodExecutionTransformer.optimized(MethodExecutionTransformer.java:370) [aopc] at org.jboss.aop.instrument.MethodExecutionTransformer.instrument(MethodExecutionTransformer.java:199) [aopc] at org.jboss.aop.instrument.Instrumentor.transform(Instrumentor.java:573) [aopc] ... 5 more
This is the generated (reformatted) code:
if (aop$MethodInfo_getId_N_6040770469254561000.interceptors != (Object[])null || (_instanceAdvisor != null && _instanceAdvisor.hasInstanceAspects)) { org.jboss.aop.advice.Interceptor[] interceptors = aop$MethodInfo_getId_N_6040770469254561000.interceptors; if (_instanceAdvisor != null) { interceptors = _instanceAdvisor.getInterceptors(interceptors); } wilken.informationssystem.berechtigung.BerichtBearbeitenBerechtigungImpl_getId_N6040770469254561000_OptimizedMethodInvocation invocation = new wilken.informationssystem.berechtigung.BerichtBearbeitenBerechtigungImpl_getId_N6040770469254561000_OptimizedMethodInvocation(aop$MethodInfo_getId_N_6040770469254561000, interceptors); invocation.setTargetObject(this); invocation.typedTargetObject = this; invocation.setAdvisor(aop$classAdvisor$aop); return ($r)invocation.invokeNext(); } else { return wilken$informationssystem$berechtigung$BerichtBearbeitenBerechtigungImpl$getId$aop($$); }
<aop> <prepare expr="execution(* wilken.basismodul.*->*(..))"/> <prepare expr="execution(* wilken.informationssystem.*->*(..))"/> </aop>