I have a doubt about stateful session bean tx context.
In the spec on page 81, it says -
� Invoking the getRollbackOnly and setRollbackOnly methods is disallowed in the session bean methods for which the Container does not have a meaningful transaction context,and to all session beans with bean-managed transaction demarcation. � Accessing resource managers and enterprise beans is disallowed in the session bean methods for which the Container does not have a meaningful transaction context or client security context.
and on page 80 ( Table for bean methods )
For CMT stateful bean and for ejbCreate,ejbRemove,ejbActivate,ejbPassivate methods, we can see setRollbackOnly and getRollbackOnly is not allowed. That means they run in unspecified tx context ( which by above quote is not a meaningful tx context).
Now also by above quote, we should not be allowed to aceess resource managers and enterprise beans. But the table says it is allowed. So isn't here some kind of contradiction?
But then what about the afterCompletion method of CMT stateful session bean. One can access the User identity information but is not allowed to access bean references and resource managers in that method?