2 Replies Latest reply on Dec 11, 2003 10:03 AM by fenor

    Invalid transaction id

    mikha

      Hi!

      I'm testing default out-of-the-box installation of JBoss-4.0.0-DR2.

      I have a queue defined in jbossmq-destinations-service.xml:
      ===========================

      <depends optional-attribute-name="DestinationManager">jboss.mq:service=DestinationManager
      TBS/HttpServer/InternalRequestQueue
      <depends optional-attribute-name="SecurityManager">jboss.mq:service=SecurityManager








      ===========================

      And a message-driven bean that tries to listen this queue.
      ejb-jar.xml:
      ===========================
      <message-driven>
      <ejb-name>RequestBouncerEJB</ejb-name>
      <ejb-class>com.nokia.warlock.HttpServer.RequestBouncerMDB</ejb-class>
      <transaction-type>Container</transaction-type>
      <acknowledge-mode>AUTO_ACKNOWLEDGE</acknowledge-mode>
      <message-driven-destination>
      <destination-type>javax.jms.Queue</destination-type>
      </message-driven-destination>
      <resource-env-ref>
      ConnectionFactory used to create queue connections
      <resource-env-ref-name>jms/QueueConnectionFactory</resource-env-ref-name>
      <resource-env-ref-type>javax.jms.QueueConnectionFactory</resource-env-ref-type>
      </resource-env-ref>
      <resource-env-ref>
      Adapter's input queue (for HttpResponse)
      <resource-env-ref-name>jms/InternalResponseQueue</resource-env-ref-name>
      <resource-env-ref-type>javax.jms.Queue</resource-env-ref-type>
      </resource-env-ref>
      </message-driven>
      ===========================

      jboss.xml:
      ===========================
      <message-driven>
      <ejb-name>RequestBouncerEJB</ejb-name>
      <destination-jndi-name>TBS/HttpServer/InternalRequestQueue</destination-jndi-name>
      <resource-env-ref>
      <resource-env-ref-name>jms/QueueConnectionFactory</resource-env-ref-name>
      <jndi-name>ConnectionFactory</jndi-name>
      </resource-env-ref>
      <resource-env-ref>
      <resource-env-ref-name>jms/InternalResponseQueue</resource-env-ref-name>
      <jndi-name>TBS/HttpServer/InternalResponseQueue</jndi-name>
      </resource-env-ref>
      </message-driven>
      ===========================

      Everything is created and deployed ok, but when I try to send some message to the queue (from external client), I got following errors in server.log:
      ===========================
      2003-10-08 11:09:54,231 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin ReadTask.run
      2003-10-08 11:09:54,231 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin WriteTask.run
      2003-10-08 11:09:54,231 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectOutputStream
      2003-10-08 11:09:54,271 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectInputStream
      2003-10-08 11:09:54,311 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] Setting up the UILClientIL Connection
      2003-10-08 11:09:54,311 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] The UILClientIL Connection is set up
      2003-10-08 11:09:54,631 WARN [org.jboss.mq.SpyMessageConsumer] Error in getMessage()
      javax.jms.JMSException: Invalid transaction id.
      at org.jboss.mq.SpyXAResourceManager.ackMessage(SpyXAResourceManager.java:72)
      at org.jboss.mq.SpyMessageConsumer.preProcessMessage(SpyMessageConsumer.java:714)
      at org.jboss.mq.SpyMessageConsumer.getMessage(SpyMessageConsumer.java:677)
      at org.jboss.mq.SpyMessageConsumer.receive(SpyMessageConsumer.java:190)
      at org.jboss.resource.adapter.jms.MessageDelegate.run(MessageDelegate.java:60)
      at org.jboss.resource.work.WorkHolder.run(WorkHolder.java:143)
      at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:727)
      at java.lang.Thread.run(Thread.java:536)
      2003-10-08 11:09:54,681 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] Exiting on IOE
      java.io.EOFException
      at java.io.ObjectInputStream$BlockDataInputStream.readByte(ObjectInputStream.java:2606)
      at java.io.ObjectInputStream.readByte(ObjectInputStream.java:845)
      at org.jboss.mq.il.uil2.SocketManager$ReadTask.run(SocketManager.java:234)
      at java.lang.Thread.run(Thread.java:536)
      2003-10-08 11:09:54,681 DEBUG [org.jboss.mq.il.uil2.SocketManager] End WriteTask.run
      2003-10-08 11:09:54,681 DEBUG [org.jboss.mq.il.uil2.SocketManager] End ReadTask.run
      ===========================
      and the bean stops listening forever (even redeployment doesn't help - only full server restart).

      Do you have any ideas what might be wrong?