To add on, the transaction that the MD Bean, SLSB, entity bean is "Required"
maybe. depends on your configuration.
If you use transactional jms, and the required tx attribute on mdb and slsb:
the message will only be sent if the db was able to persist,
and the message will not be sent if the db was not able to persist,
and the db will not persist, if the message was unable to be sent
etc: both take part in the same transaction.
This explains how to do tx jms