5.16. JMS Transacted Session

In a JMS Transacted Session, a message is placed on a queue but remains undelivered until the enclosing transaction has been committed. It is then collected by the receiver in the scope of a separate transaction. Unfortunately for synchronous request/response interactions this can result in a time-out waiting for the response since the sender blocks waiting for the response before it can terminate the delivery transaction.