Hello David,
I have set the value of channelTransacted to true but I am still not seeing acked messages being committed and displayed in the rabbit management utility.
Code:
<bean id="messageListenerContainer" class="org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer" scope="session">
<property name="connectionFactory" ref="connectionFactory" />
<property name="queueName" value="cbs.push.queue"/>
<property name="concurrentConsumers" value="1" />
<property name="messageListener" ref="messageListenerAdapter" />
<property name="channelTransacted" value="true" />
<property name="autoStartup" value="false" />
</bean>
I am expecting to see a count of ack'd messages just like the screen shot shows on the rabbitmq.com website describing the functionality of the management tool. http://www.rabbitmq.com/img/management/queue.png
I have also implemented a consumer class which uses the Channel that calls the ack method.
Code:
while (runInfinite) {
QueueingConsumer.Delivery delivery;
try {
delivery = consumer.nextDelivery();
channel.txCommit();
} catch (InterruptedException ie) {
continue;
}
System.out.println("Message received"+ new String(delivery.getBody()));
channel.basicAck(delivery.getEnvelope().getDeliveryTag(), true);
I wasn't sure if the transaction manager was required logic. I was glad to find in the forum your posting stating it wasn't required.
http://forum.springsource.org/showthread.php?p=336703
"transaction manager is optional, and auto-ack should still be the default"
I really don't know what else I need to do to get the ACKS to show up.