2 Replies Latest reply on May 14, 2002 12:15 PM by hchirino

    client acknowledgement problem

    wbonnell

      We have an enterprise application that was initially built on Weblogic. The decision was made to port to JBoss 2.4.3 before we release (political and monetary issues). Anyway, we have successfully ported everything with the exception of our job processing framework which heavily uses JMS.
      We have long running *jobs* (messages) that are processed out of process (and on other machines) by *job servers*. We hold on to an open JMS session (which is NOT transacted) along with the message on the *JMS server* until we either receive a completion message from a job server at which time we ack the message or the job server times out at which time we close the session which "returns" the job back to the queue for pickup by another job server.

      This method works fine on Weblogic 6.1. However, it does NOT work on JBoss. Even though a job server fails, we still see the message on disk, but the message is not resent. Interestingly enough, if we *restart* jboss, the message is resent.

      I did some research on this site, and it appears others have had similar problems. We've tried both types of persistent managers (including the "new" org.jboss.mq.pm.file.PersistenceManager) with no noticeable difference aside from how messages are stored on disk.

      Moving to 3.0 is not an option this late in the game considering it is still in beta- we need to ship now. Is OpenJMS fully JMS compliant? Is this issue resolved in 3.0 anyway? What is the near-term workaround?