2 Replies Latest reply on Aug 4, 2006 2:51 PM by ajbiv

    Problems with message delivery

      I am using JBoss MQ with MDBs. In my code, I catch an exception and call setRollbackOnly. I am using JTA via spring to manage transactions. I see that my database transactions were rolled back; however, my JMS message seems to disappear. I was expecting it to be redelivered to my queue and the processing to try again.

      Here are some of my configurations...
      my-jboss-mq.xml file


      <depends optional-attribute-name="DestinationManager">
      jboss.mq:service=DestinationManager

      10
      10


      ejb-jar.xml

      <message-driven>
      <ejb-name>CellularOutgoingMDB</ejb-name>
      <ejb-class>fn.service.ejb.CellularOutgoingMDB</ejb-class>
      <transaction-type>Bean</transaction-type>
      <acknowledge-mode>Auto-acknowledge</acknowledge-mode>
      <message-driven-destination>
      <destination-type>javax.jms.Queue</destination-type>
      </message-driven-destination>

      ...more stuff..

      </message-driven>


        • 1. Re: Problems with message delivery

          RedeliveryLimit=10
          RecoveryRetries=10

          I was trying to show this...u can view source and see my exact configuration

          • 2. Re: Problems with message delivery

            ok, i figured out that BMT does not cause redelivery of messages b/c of the differneces in the transaction boundaries.

            So, by moving to CMT for my MDB and using JTA in spring, I believe I am able to accomplish what i want which is my db rollback() if something bad occurs during the message processing and re-issue the message.

            it seems that the CMT is attaching to my JTA UserTransaction? is that correct?