Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[aspectj-users] problems with load-time weaving

I have the simple code:


import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Pointcut;

@Aspect
public abstract class dynAbstract {


@Pointcut
abstract void fieldGet();


@Pointcut
abstract void fieldSet();


@Pointcut
abstract void methodCall();


@after("fieldGet()")
public Object aroundFieldGet(JoinPoint thisJoinPoint) throws RuntimeException
{
System.out.println("get");

}


@after("fieldSet()")
public void aroundFieldSet(JoinPoint thisJoinPoint) throws RuntimeException
{
System.out.println("set");


}


@after("methodCall()")
public Object aroundMethodCall(JoinPoint thisJoinPoint) throws RuntimeException
{
System.out.println("metodo");
}


}


and the aop.xml:

<aspectj>
<aspects>


<aspect name="dynAbstract"/>


<concrete-aspect name="bar" extends="dynAbstract">


<pointcut name="fieldGet" _expression_="get(!static * (Cart||Coor||Imprime||Main).*)"/>
<pointcut name="fieldSet" _expression_="set(!static * (Cart||Coor||Imprime||Main).*)"/>
<pointcut name="methodCall" _expression_="call(!static * (Cart||Coor||Imprime||Main).*(..))"/>


</concrete-aspect>
</aspects>


    <weaver options="-verbose">

    </weaver>

    

</aspectj>



and when I am running the program:


public class Main {


public static void main(String[] args) {


while(true)

{


Coor p = new Coor(0.1, 0.2);
System.out.println(p.a);

}
}
}

it prints this:

info AspectJ Weaver Version 1.5.2 built on Thursday Jun 29, 2006 at 15:31:04 GMT
info register classloader org.aspectj.weaver.loadtime.WeavingURLClassLoader
info using configuration /Users/hugosobral/Documents/runtime-New_configuration/teste/META-INF/aop.xml
info register aspect pt.utl.ist.dynAbstract
info generating class 'bar'
info weaving 'Main'
info weaving 'Coor'
0.1
0.1
...


but has you can see, it should print get between 0.1


what is the problem?


thanks in advance



Back to the top