I got it now...
Yes, it looks reasonably...
But it's like have "Supports" attribute for Entity EJB. We know that
all Entity business methods have to be executed in transaction context, and we can't safely rely on context of bean caller. This not the right way. Bean Provider can't be sure that some one will not call such bean without valid Txn context. That's why *only* possible attributes for entity are : Mandatory, Required, RequiresNew
In MDB situation is a little bit different, but container just would like to be *safe* and want to know how to handle any method call, does not relying Txn context of method caller (which will be separate method of the same bean), it just wants to be prepared to the worst situation : *NO* Txn context.
If you look at
this summary table you'll see that RequiresNew and Required behave exactly in the same way when client comes *without* transaction. The same for Supports and NotSupported.
And, hey, don't forget that MDB can't use 'Never' or 'Mandatory', because they throw nice transaction exceptions, and MDB does not like any exception......
P.s. these are only my thoughts, I may be wrong, I definitely wrong, because got only 94% on SCBCD....
P.p.s.
P.p.p.s. and this is out of scope of the
test, btw.........