AspectWerkz - Simple, dynamic, lightweight and powerful AOP for Java
AspectWerkz is a dynamic, lightweight and high-performant AOP framework for Java.
AspectWerkz offers both power and simplicity and will help you to easily integrate AOP in both new and existing projects.
AspectWerkz utilizes runtime bytecode modification to weave your classes at runtime. It hooks in and weaves classes loaded by any class loader except the bootstrap class loader. It has a rich and highly orthogonal join point model. Aspects, advices and introductions are written in plain Java and your target classes can be regular POJOs. You have the possibility to add, remove and re-structure advice as well as swapping the implementation of your introductions at runtime. Your aspects can be defined using either an XML definition file or using runtime attributes.
AspectWerkz is Free Software. The LGPL-style license allows the use of AspectWerkz in both commercial and open source projects.
To get started take a look at the Hello World Tutorial