From: nthx <nu...@jb...> - 2005-07-28 04:39:39
|
Hi there! I need help cause I cannot figure it out by myself. I got stackOverflow and don't know why... Here's the short code public void test(){ | TestRoot root = new TestRoot(); | ((Persistable)root).getObjectByOID(id); | } Output: [junit] Testcase: testGetObjectByOID took 4,575 sec | [junit] Caused an ERROR | [junit] null | [junit] java.lang.StackOverflowError | [junit] at java.lang.Exception.<init>(Exception.java:77) | [junit] at java.lang.reflect.InvocationTargetException.<init>(InvocationTargetException.java:54) | [junit] at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source) | [junit] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) | [junit] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:99) | [junit] at org.jboss.aop.ClassAdvisor.invokeMethod(ClassAdvisor.java:1495) | [junit] at org.jboss.aop.ClassAdvisor.invokeMethod(ClassAdvisor.java:1468) | [junit] at org.nthx.pat.tests.TestRoot._added_m$0(TestRoot.java) | [junit] at org.nthx.pat.tests.TestRoot.getObjectByOID(TestRoot.java) | [junit] at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source) | [junit] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) | [junit] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:99) | [junit] at org.jboss.aop.ClassAdvisor.invokeMethod(ClassAdvisor.java:1495) | [junit] at org.jboss.aop.ClassAdvisor.invokeMethod(ClassAdvisor.java:1468) | [junit] at org.nthx.pat.tests.TestRoot._added_m$0(TestRoot.java) | [junit] at org.nthx.pat.tests.TestRoot.getObjectByOID(TestRoot.java) | ......and so on.. | My configurations: <introduction expr="class(@pat.root)"> | <interfaces> | org.nthx.pat.Persistable | </interfaces> | </introduction> | <bind pointcut="call(void $instanceof{org.nthx.pat.Persistable}->getObjectByOID(java.lang.Long))"> | <advice aspect="org.nthx.pat.PersistableAspect" name="getObjectByOID"/> | </bind> | | @pat.root | public class TestRoot{} | | public interface Persistable | { | public Identifiable getObjectByOID(Long OID); | } | | public class PersistableAspect | { | public Object getObjectByOID(Invocation invocation) throws Throwable | { | return null; | } | } Any idea would be appreciated, cause I really don't know why is this happening. I see nothing making the loop ... Is it becase I cut a nonexistent method? There is no mixin here.. Regards, Tomasz View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3886980#3886980 Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3886980 |