1 Reply Latest reply on Aug 19, 2002 2:11 PM by Corby Page

    Container-managed transactions

    Corby Page Newbie

      I am currently running JBoss 2.4.4 / Tomcat 4.0.1. I will be migrating to JBoss 3.01 when it is released.

      I have a bean which receives a request, gets an XA JMS connection, creates a message, and puts the message into a queue (thereby enlisting the queue in the bean's transaction).

      If I make the bean a Session Bean, with Bean-Managed transactions, then everything goes swell.

      If I make the bean a Session Bean, with Container-Managed transactions, then everything goes swell.

      If I make the bean a Message-Driven Bean, with Bean-Managed transactions, then everything goes swell.

      If I make the bean a Message-Driven Bean, with Container-Managed transactions, then we have a problem. JBoss complains about an invalid transaction id when I try to enlist the queue, which is the same message it would give me if I tried to create a transaction outside the scope of an EJB container.

      According to standardjboss.xml, message-driven beans are using the exact same transaction interceptor as session beans. However, they use their own special interceptor for bean-managed transactions. Perhaps this interceptor contains special logic that should also be applied for container-managed transactions?

      I can create an .ear which illustrates the problem if someone is seriously interested in investigating, but my questions are:

      1) Is this a known problem?
      2) Is is still a problem in JBoss 3.x?

      Thanks,
      Corby