Skip to content


Subversion checkout URL

You can clone with
Download ZIP
JPA support for Weld SE, implementation of CDI for Java SE
branch: master
Failed to load latest commit information.
README.txt Added README and .gitignore
nb-configuration.xml @Observes not working, @ApplicationScoped constructed twice
nbactions.xml @Observes not working, @ApplicationScoped constructed twice
pom.xml @Observes not working, @ApplicationScoped constructed twice


Got inspired by

This implementation will cause a separate entity manager for every transactional method. If you are aware of EJB3 or Spring transactions, then you will probably know the transaction type requires_new.
It is the same approach. If you want to achieve context propagation as in a EJB3, we need to improve our implementation. I leave the task to you but will outline the required steps.

    * Add an attribute to the @Transactional annotation which defines if the method should reuse an existing transaction.
    * Improve the interceptor
          o Check if the @Transactional annotation defines the reuse of an existing transaction
          o If an existing TX should be reused, it could check if the store has already a current entity manager. We could add a service method to the store like boolean hasEntitymanager()
          o If an existing TX should be reused and an entity manager exists already, do nothing else handle the transaction and create an entity manager.

Other way would be to implement doInJpa() like in Spring 2.5.
Something went wrong with that request. Please try again.