Does a BMT stateless bean's ejbCreate comes under unspecified transaction context? Pg 228 HFE says that from an ejbCreate method "one cannot get a transaction reference and call methods on it (BMT Beans)". although the former part is wrong coz we can obtain a transaction reference from the method (EJB Spec pg 90 table 3). So if it really runs in "unspecified transaction" then why is it not mentioned in 499? Or is it that "Unspecified Transaction" applies only for CMT beans?
I suppose that you can call getUserTransaction() within ejbCreate()-method of stateless session bean with BMT, but it's not allowed (maybe throws an IllegalStateException?) to call any methods of it. Why? Because ejbCreate() is called by the container prior to putting the bean to the pool.
I tried to do it in WebSphere 5.1 and it did not allow me to call begin(): it throws NullPointerException in com.ibm.ejs.container.UserTransactionWrapper.begin(UserTransactionWrapper.java:185) But it works fine when I called getUserTransaction().getStatus(): it returned STATUS_NO_TRANSACTION.