I'm loading a library for a project which performs a bootstrap process when a spring context event fires. Within this process a method is marked as @Transactional and some setup steps are executed. However, when this library is loaded into a web application, the bootstrap process does not execute within a transaction. (both configured for aspect compile time weaving) If I drop the bootstrap source directly into the web app and run, the transaction happens.
What am I missing? Do I need to use explicit transactions in code being loaded as a library?