Thanks Balaji and Frederic for quick reply ...
You can get the interface to it anytime ... but you can use it to manage transaction only when you get a meaningful transaction context.
I see another scenario here.
For ejbCreate, ejbRemove, ejbActivate, ejbPassivate of SFSB, HFEJB says that
- force transaction to rollback (CMT)
- find out if transaction has been set to rollback (CMT)
- get transaction reference and call methods on it (BMT)
Here, why BMT is allowed to call methods on the UserTransaction? These methods doesn't run under a meaningful transaction context.