Hello. I'm new to ActiveMQ and I'm confused by the JMS Spec and the way it's implemented bt AMQ. I have both consumer and producer session created with Session.CLIENT_ACKNOWLEDGE. I want to pause message flow from the producer until messages are consumed by a consumer. I don't want to use persistence or transaction as I don't care if the broker crashes. I do want to tie up JMS acknowledgments to errors in my application so that if a consumer failed to process a message it wont acknowledge it and the producer wont send another one. CLIENT_ACKNOWLEDGMENTS allow me to cal message.acknowledge implicitly but that wont stop the producer from sending another message. Why does the producer continue if no ACKS has been received?
PS This is how I understand CLIENT_ACKNOWLEDGMENTS "Client mode: When a session uses client mode, the messages sent or received from the session are not acknowledged automatically. The application must acknowledge the message receipt. This mode gives the application (rather than the JMS provider) complete control over message acknowledgement, at the cost of increased code complexity." Taken from http://www.javaworld.com/javaworld/jw-02-2002/jw-0315-jms.html?page=1 this article -- View this message in context: http://www.nabble.com/Pausing-producer-with-ACKS.-tp23941992p23941992.html Sent from the ActiveMQ - User mailing list archive at Nabble.com.