Hello, In my application based on QPID JMS, I have a session created in CLIENT_ACKNOWLEDGE mode, which uses a MessageListener for anynchronous message processing. As far as I understand from the JMS specs, in this case:
1) After processing of each message, the message acknowledge() method must be called. This will implicitly acknowledge all messages received so far on the session. 2) The acknowledge() method must be called from within onMessage() of the MessageListener implementation. If my understanding is correct, then the processing and storage of the message, which can be a lengthy operation such as committing to a database, will have to be synchronous and block the onMessage, thus preventing further messages to be de-queued in the meantime. Is this the way it works? Isn't there any other way to make the processing asynchrounous but preserving the reliability? Thanks for any advice Marco -- View this message in context: http://qpid.2158936.n2.nabble.com/Manual-acknowledge-within-JMS-message-listener-tp7600630.html Sent from the Apache Qpid users mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
