Page 1 of 1

About Question enthuware.oce-ejbd.v6.2.512 :

Posted: Thu Oct 25, 2012 9:28 am
by fjwalraven
I think there are a couple of things not specified well in this question:
Consider the sequence of method calls as shown in the following image when a message is received by the MDB. All the beans have container managed transaction demarcation and have 'Required' as the transaction attribute. What will happen if SLSB2 rolls back the transaction?
First of all, if the container has started the transaction on the receipt of the message, that means that SLSB2 cannot rollback the transaction as it is running under the same transaction context. It can only mark the transaction for rollback (call setRollbackOnly())

Secondly, the "correct answer" states:
"The transaction started by the MDB is rolled back and JMS Message redelivery semantics will apply."
The transaction is not started by the MDB, but by the container (otherwise you would have a BMT MDB)

Regards,
Frits

Re: About Question enthuware.oce-ejbd.v6.2.512 :

Posted: Sun Oct 28, 2012 1:26 pm
by admin
You are right. This question has now been fixed to remove the two issues you mentioned.

thank you for your feedback,
Paul.