Val is a long time AspectJ user, and dived into AspectWerkz to check out a solution for instance-based cross cutting.
He wrote up a nice little comparison based on his findings:
I have been using AspectJ since the first beta versions and I have always been quite happy with it. However, even though AspectJ excels at type-based crosscutting, I still think that it lacks proper techniques for achieving *true* instance-based crosscutting. JBoss AOP and Spring (which I haven’t talked about in this blog) are said to achieve this goal but I’m not completely satisfied with those solutions. I’m still looking into how AspectWerkz could provide a better solution to my problem. I’ll probably write an update about this problematic in the near future.
One of the criticisms of AspectWerkz was the lack of this(), target(), args() and such. However, Jonas popped up to tell us that they will be supported shortly!