I've read the EJB3 spec and the latest O'Reilly and Manning books and yet I can't see defined anywhere how transactions are propagated over multiple session beans.
For example, if I call a method marked as "NEVER" on bean A and bean A calls a method marked as REQUIRESNEW on bean B, what happens?
In practice, using JBoss, we've observed that if A and B are the same bean, the NEVER wins; if they are different beans, the method on B gets a new transaction (i.e. The REQUIRESNEW is taken into account).
Is it just that the spec doesn't define this behaviour?