2 Replies Latest reply on Oct 30, 2006 3:35 AM by kimatrix

    Jboss (websphere MQ), afther rollback message unvisible unti

    kimatrix

      Hi,

      I have connected Jboss with Websphere MQ and that works oke. I can also rollback by throwing exception or by setting setrollbackonly. Couple of days ago i asked how to stop delivery of the messages until the application starts, i got a answer and i have also implemented that. Now i can stop/start the delivery from my application but there is something strange.

      My message enters my bean, i try to do something with it and if it goes wrong i stop the delivery and i try to rollback the message. In Jboss i see that the rollback has taken place but i do not see my message in MQ. If i manually start the delivery again all other messages in MQ will be processed but the first message is still in the air meaning it is in Jboss. If i shut down jboss the first message will be back in MQ with the flag rollbacked.

      So for some reason i can not stop the delivery and let the message rollback to MQ. Does anyone know how i can manage to stop delivery on error and also rollback the message to MQ?
      It shouldn?t be a problem that message is in Jboss as long as it would start to process after manual start but it does not. Also if i don't restart my Jboss the transaction gives timeouts and keeps doing rollbacks.

      If I stop the delivery manually while the bean is processing messages it all goes right, meaning that I don?t loose messages they all get back to MQ. So how come that it manually works and from the application not?

      Only thing I could think of now is that the rollback depends of the delivery (maybe the message listener) to rollback the message. If this is so then it is a bit weird.

      I hope someone has any idea how this is possible.