This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
I read the following in spec ejb-3_0-fr-spec-ejbcore.pdf page 342
If the client request is associated with transaction T1 and instance is already associated with T2, container suspends T1 and invokes bean method with T2. Container resumes T1 when method (with any associated interceptor methods) completes. This case never happens for stateless session bean or a MDB.
The doubt is What happens if BMT demarcated session bean starts a new transaction (might not be already associated) when the client invokes bean method and client is associated with transaction ? Can this case happen with stateless session bean ? What exception is thrown to client when SLS bean rolls back the transaction associated with it ? Will the client transaction associated with client also be rolled back and clients recieves TransactionRolledBackException ?