Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [aspectj-users] AjcClosureX.class files

closures are created when around advice cannot be inlined.  They are
generated by the weaver.  if you build your application separate to
your aspect, you will not get them created until the weave occurs.
how are you doing the weave? loadtime? post-compile?
how does it actually fail?

Andy.

On 01/06/07, Paul Bergin <Paul.Bergin@xxxxxx> wrote:
Anyone?
Why are AjcClosure files created?


>-----Original Message-----
>From: aspectj-users-bounces@xxxxxxxxxxx
>[mailto:aspectj-users-bounces@xxxxxxxxxxx] On Behalf Of Paul Bergin
>Sent: 31 May 2007 16:05
>To: aspectj-users@xxxxxxxxxxx
>Subject: [aspectj-users] AjcClosureX.class files
>
>Hi
>Currently I have an app deployed on weblogic, I need to create
>4 pointcuts to intercept calls. I have them defined and when I
>compile and jar all the code together it creates AjcClosure
>files in the existing code and works correctly.
>E.G.
>Existing object (Factory.java)
>
>       com.Factory.class
>Created class
>       com.Factory$AjcClosure1.class
>
>But I want the aspectJ code separate to the existing code.
>When I build the two separately the AjcClosure files are not
>created because the main app is build separately, but I see
>there are 4 AjcClosure class files built in my aspectJ project
>(obviously Factory$AjcClosure1 does not exist), I would have
>thought these classes should be used when running, but when I
>debug it looks for AjcClosure class files in the existing code
>base (Factory$AjcClosure1).
>
>Here is an example of one of my point cuts
>
>       public pointcut pointCutOne(String fname, String sname) :
>               call(public Quote Factory.changeDetails(String,
>String) throws JdbcUtilException ) && args(fname, sname);
>
>       Object around(String fname, String sname) :
>             changeContactDetails(fname, sname) {
>                       Object resultObj = proceed(fname, sname);
>
>                       return resultObj;
>       }
>
>Where am I going wrong?
>
>Regards
>Paul
>_______________________________________________
>aspectj-users mailing list
>aspectj-users@xxxxxxxxxxx
>https://dev.eclipse.org/mailman/listinfo/aspectj-users
>
_______________________________________________
aspectj-users mailing list
aspectj-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/aspectj-users



Back to the top