RE: [aspectwerkz-dev] stack overflow in cvs head

"Jonas Boner" <[email protected]>
Newsgroups gmane.comp.java.aspectwerkz.devel
Message-ID <[email protected]>
Hi Chris

Great that you found the bug. I will look into this. 
Which pointcuts are you using and together with which advices?
Thanks a lot.

-Jonas

> -----Original Message-----
> From: christoph sturm [mailto:chrisml-Ws/[email protected]] 
> Sent: Sunday, July 18, 2004 9:30 PM
> To: [email protected]
> Subject: Re: [aspectwerkz-dev] stack overflow in cvs head
> 
> hey
> 
> i have now isolated the problem further, and found a really 
> easy way to reproduce it:
> 
> this class:
> 
> 
> public class Guess  {
> 
>      public Guess(Guess no) {
>      }
> 
>      static public void main(String[] args) {
>      }
> }
> 
> also produces a stacktrace when its preprocessed.
> so i think that the preprocessor fails if a class has no 
> default constructor.
> 
> 
> regards
>   chris
> 
> 
> 
> On Tue, 13 Jul 2004 16:37:12 +0200, christoph sturm 
> <chrisml-Ws/[email protected]> wrote:
>  > hi alex!
>  >
>  > i was just running a jmock based mock testsuite. jmock 
> uses cglib to
>  > create mockobjects.
>  >
>  > this test fails here:
>  > -----
>  > package com.schaumwelt.aspects;
>  >
>  > import org.jmock.cglib.MockObjectTestCase;
>  >
>  > import java.util.Date;
>  >
>  > public class AspectwerkzTest extends MockObjectTestCase
>  > {
>  >      public void testNothing()
>  >      {
>  >          mock(Date.class);
>  >      }
>  > }
>  > -----
>  > you just need jmock 1.0.1 binary distribution, cglib 2.0 
> is included.
>  >
>  > thx
>  >   chris
>  >
>  >
>  >
>  > On Tue, 13 Jul 2004 08:47:57 -0500 (CDT), Alex 
> <alex-he/e8N7AIe/[email protected]> wrote:
>  >  > Hi
>  >  > Do you think I can reproduce it,just by adding some 
> aspect on the 
> cglib
>  >  > code base, or did you have it when running Hibernate or 
> something ?
>  >  > I need to know if you had it out of the box or for on the fly 
> generated
>  >  > classes.
>  >  > May be you can guess it from the names printed out 
> there if you are
>  >  > familiar with cglib.
>  >  > (net.sf.cglib.core.Block, net.sf.cglib.core.EmitUtils$12 etc)
>  >  >
>  >  > Alex
>  >  >
>  >  >
>  >  >
>  >  >
>  >  > ----- Original Message -----
>  >  > > hi all!
>  >  > >
>  >  > > aw3 cvs head produces stack overflow exceptions since 
> yesterday
>  > evening:
>  >  > >
>  >  > > AspectWerkz - WARN - Error pre-processing class
>  >  > > net.sf.cglib.core.ClassEmitter in Thread[main,5,main]
>  >  > > java.lang.StackOverflowError
>  >  > > AspectWerkz - WARN - Error pre-processing class
>  >  > > net.sf.cglib.core.CodeEmitter in Thread[main,5,main]
>  >  > > java.lang.StackOverflowError
>  >  > > AspectWerkz - WARN - Error pre-processing class
>  >  > > net.sf.cglib.core.RemappingCodeVisitor in Thread[main,5,main]
>  >  > > java.lang.StackOverflowError
>  >  > >       at
>  > java.lang.ref.ReferenceQueue$Lock.<init>(ReferenceQueue.java:36)
>  >  > >       at
>  > java.lang.ref.ReferenceQueue$Lock.<init>(ReferenceQueue.java:36)
>  >  > >       at 
> java.lang.ref.ReferenceQueue.<init>(ReferenceQueue.java:37)
>  >  > >       at java.util.WeakHashMap.<init>(WeakHashMap.java:151)
>  >  > >       at
>  >  > > <snip/>
>  >  > >       at
>  >  > >
>  > 
> org.codehaus.aspectwerkz.reflect.impl.javassist.JavassistClass
> Info.<init>(JavassistClassInfo.java:148)
>  >  > >       at
>  >  > >
>  > 
> org.codehaus.aspectwerkz.reflect.impl.javassist.JavassistClass
> Info.getClassInfo(JavassistClassInfo.java:182)
>  >  > >       at
>  >  > >
>  > 
> org.codehaus.aspectwerkz.reflect.impl.javassist.JavassistCodeI
> nfo.getParameterTypes(JavassistCodeInfo.java:62)
>  >  > >       at
>  >  > >
>  > 
> org.codehaus.aspectwerkz.reflect.impl.javassist.JavassistConst
> ructorInfo.addAnnotations(JavassistConstructorInfo.java:134)
>  >  > >       at
>  >  > >
>  > 
> org.codehaus.aspectwerkz.reflect.impl.javassist.JavassistConst
> ructorInfo.<init>(JavassistConstructorInfo.java:40)
>  >  > >       at
>  >  > >
>  > 
> org.codehaus.aspectwerkz.reflect.impl.javassist.JavassistClass
> Info.<init>(JavassistClassInfo.java:148)
>  >  > >       at
>  >  > >
>  > 
> org.codehaus.aspectwerkz.reflect.impl.javassist.JavassistClass
> Info.getClassInfo(JavassistClassInfo.java:182)
>  >  > >       at
>  >  > >
>  > 
> org.codehaus.aspectwerkz.reflect.impl.javassist.JavassistCodeI
> nfo.getParameterTypes(JavassistCodeInfo.java:62)
>  >  > > AspectWerkz - WARN - Error pre-processing class
>  >  > > net.sf.cglib.core.EmitUtils$12 in Thread[main,5,main]
>  >  > > java.lang.StackOverflowError
>  >  > > AspectWerkz - WARN - Error pre-processing class 
> net.sf.cglib.core.Block
>  >  > > in Thread[main,5,main]
>  >  > > java.lang.StackOverflowError
>  >  > > AspectWerkz - WARN - Error pre-processing class
>  >  > > net.sf.cglib.reflect.FastClassEmitter$4 in Thread[main,5,main]
>  >  > > java.lang.StackOverflowError
>  >  > > AspectWerkz - WARN - Error pre-processing class
>  >  > > net.sf.cglib.core.EmitUtils$16 in Thread[main,5,main]
>  >  > > java.lang.StackOverflowError
>  >  > >
>  >  > > Maybe this has somethig to do with cglib. I have 
> actually no idea
>  > why aw
>  >  > > wants to pre process the cglib classes, because i 
> have only no 
> caller
>  >  > > side pointcuts, and all my pointcuts use annotations, 
> and the cglib
>  >  > > classes arent annotated.
>  >  > >
>  >  > > regards
>  >  > >   chris
>  >  > >
>  >  > >
>  >  >
>  >  >
>  >
>  >
> 
> 
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.