anonymous wrote :
| I suppose for a CMT method in a "Non specified" tx context I guess it is
legal to run it in a local tx (although I'm not sure why that was chosen rather than
just having no tx).
|
To support redelivery of a message for an MDB that throws a RuntimeException in a 'non
specified transaction context'.
Being that JCA has to be JMS provider agnostic if a listener throws a runtime exception
and the transactional attribute is NotSupported (BMT or CMT) and the client wants the
message to be redelivered, the only way to achieve this in a neutral manner is to use
transactions. Note, neither the JMS or the EJB spec prohibit this being that the
transactional handling of a receipt of a message in an unspecified context is left up to
the vendor.
Unfortunately, the 4.0.5 code base, as opposed to the refactoring in HEAD, uses a 1PC
optimization on an XAResource which was not a good design to begin with. The latest code
uses local JMS transactions both for performance reasons, as well as for clarity in the
BMT/CMT NotSupported scenario.
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4001297#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...