Originally posted by Alibabra Sanjie:
I am still not convinced!
As I said, I think it's a somewhat arbitrary decision. We can only speculate about what was going through the minds of the designers....but how about this....
RequiresNew has more code (to suspend any inbound transactions). Although that code would not be active in MDB's, the classes supporting "RequiresNew" would be larger than for "Required". Too bad this argument goes against the use of "NotSupported", since it has the 'suspend' code in it as well. Dang! But "NotSupported" works for me because no matter what the inbound transaction situation is, the method always runs without a transaction (not true for "Supports"). Also "Supports" gives the wrong message (this is likely the biggest reason it wasn't selected). The whole deal is you want to tell your MDB NOT to use a transaction, then you select something called "Supports"? That would be completely whacked, and folks would have a field-day hacking on the designers for that one.
--Dale--