0 Replies Latest reply on Jun 5, 2006 10:03 AM by Shai Wolf

    Why are ServerSessions transacted?

    Shai Wolf Newbie

      Hi,

      I am using JBoss 4.0 SP1.
      I deployed a MDB that is not transacted.
      In the ejb-jar.xml the trans-attribute tag of the MDB has the value NotSopported, like so:

      <assembly-descriptor>
       <container-transaction>
       <method>
       <ejb-name>MyMDB</ejb-name>
       <method-name>onMessage</method-name>
       </method>
       <trans-attribute>NotSupported</trans-attribute>
       </container-transaction>
       </assembly-descriptor>


      However, the ServerSessions that JBoss create are transacted, and the JMS sessions that they hold are transacted. As a result, after the MDB's onMessage() method is called, JBoss invokes the commit() method of the JMS session.

      Can anyone explain why non-transacted MDBs use transacted sessions? In other words, why does JBoss create transacted ServerSessions even when the MDB is not marked as transacted?

      Thanks,
      Shai