1 Reply Latest reply on Apr 1, 2003 2:27 PM by Adrian Brock

    delaying resend of message

    Daniel II Demecillo Newbie


      let's us say we have an mdb w/c has encountered an exception that we deemed retryable. we catch the exception, we setRollbackOnly. so jboss will resend the message to our mdb which is what we wanted. but jboss resends the message immediately and sends the message to dlq if still fails a certain number of times (default is 10). sending to dlq is good and retry count is configurable. now i was just wondering if there's a way to delay the resend?. i've read the docs on the message driven bean container and hv not seen something like this. is this something that the container should handle? or should i start coding my mdb to handle this delay somehow? i was hoping the container could do it for me. is this possible?

      i hope someone could enlighten me.


        • 1. Re: delaying resend of message
          Adrian Brock Master

          The container rolls back the transaction
          because you requested it.
          This nacks the message. If this is the only
          message it will be immediatley redelivered
          by the JMS server.

          The container could handle it, but there is
          no spec compliant mechanism to tell the
          container that the rollback is due to a severe
          problem and it should wait or the rollback
          is due to a transient problem like a deadlock
          detection which can be retried immediately.

          The spec doesn't even allow you sleep()
          in the MDB.