In AspectWerkz aspects are managed by an aspect container, which is responsible for creating and configuring the aspects. It also gives you the possiblity of writing your own custom container implementation. This is convenient when you want to have full control of how your aspects are instantiated and configured.

This is important when you want the aspects to work together with an IoC (Inversion Of Control) container such as Spring, Pico Container or HiveMind.

Aspect containers available

How to write your own container

If you want to write your own container then AspectWerkz provides a convenient abstract base class, which handles all of the nitty-gritty details. All you have
to do is to extend the


class and implement the

Object createAspect()


To tell the AspectWerkz system that you want to deploy a specific aspect in your custom oaspect container you have to specifify that in the regular aspect definition file like this:

<aspect class="foo.bar.Baz" container="my.custom.AspectContainer">