No. Consider the following:
Synchronous:
Client: receive(); -> server
Client: AUTO_ACK -> synch
Client: process message (only once)
Client: Crash
Client: Reboot
Client: Cannot re-receive the message
Asynchronous:
Client: receive(); -> server
Client: AUTO_ACK -> asynch
Client: process message
Client: Crash (the asynch ACK never made it to the server)
Client: Reboot
Client: Can re-receive (and reprocess!) the unacked message
In fact, part of the contract of receive() for AUTO_ACK is that
the ACK has been successfully done such that when the client
does processing on the message, it knows that it won't get the message again.
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3990447#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...