5 Replies Latest reply on Feb 24, 2004 5:46 AM by adrian.brock

    Invalid Transaction id JMSException in SessionBean

    philc

      Hello,

      I'm getting a javax.jms.JMSException: Invalid transaction id when calling publisher.publish(message).

      publish is called inside a local session bean method which was itself called by another session bean. So it's :
      Session --> Session --> publish

      The first session method transaction attribute is set to "RequiresNew" and the second session bean method is set to "Required".

      I also checked the JMS session and getTransacted returns true. I get the connection from XAConnectionFactory like this:
      (TopicConnectionFactory)jndi.lookup("XAConnectionFactory");

      Should I use "java://XAConnectionFactory"? Does it matter? How can I get more info on the transaction?

      Thanks,
      Philippe

      btw: I'm running JBoss3.0RC3


      This is the exception:

      javax.jms.JMSException: Invalid transaction id.
      at org.jboss.mq.SpyXAResourceManager.addMessage(SpyXAResourceManager.java:71)
      at org.jboss.mq.SpySession.sendMessage(SpySession.java:395)
      at org.jboss.mq.SpyTopicPublisher.internalPublish(SpyTopicPublisher.java:120)
      at org.jboss.mq.SpyTopicPublisher.publish(SpyTopicPublisher.java:68)
      at com.brockhousecooper.tw.ejb.beans.MessengerBean.broadcastBeanFieldChanged(MessengerBean.java:138)