Session Bean transactions. Why EJB 1.1 specs says that Session Beans can have BM or CM transaction, but not both in same bean?

Nick Maiorano

CMTs and BMTs are 2 different animals. Mixing them in the same bean would require the application container to potentially start a transaction at the beginning of the method while the BMT bean itself would start another. Things could get quickly get out of hand.
Even mixing CMT beans and BMT beans in the same process flow can be tricky. For example, a BMT bean cannot participate in transactions started by a CMT bean (although the opposite is allowed).

The real is question is why would you need to do this? Most of the time, you will use CMTs. BMTs are used in special circumstances where you need fine-grained transaction control.