If you need to figure out whether queue empty or not, you can call AMQPQueue::declare() which is idempotent and in result returns messages count in queue. Note, that number is not pretty accurate (see why). In addition, you can just call AMQPQueue::get() (behaves like it's done in admin tool). And...

There are no such feature like retry attempts in RabbitMQ (as well as in AMQP protocol). Possible solution to implement retry attempts limit behavior: Redeliver message if it was not previously redelivered (check redelivered parameter on basic.deliver method - your library should have some interface for this) and drop it...

Question-1) Do I have now only one queue named "queuName" or do I have two queues named "color1" and "color2"? Answer : You have to must go through tutorial https://www.rabbitmq.com/getstarted.html base on that you decide how you want to create queue and which exchange types[direct, topic, headers and fanout] match...

I ended up using the pollEnrich dsl to achieve this. For example my route builder looks like: from("direct:service-endpont").transacted("PROPOGATION_REQUIRED").setExchangePattern(ExchangePattern.InOut).pollEnrich("activemq:test-queue").bean(myHandler); I use the direct endpoint as a service, sending a "request" message to the direct endpoint polls the jms queue for a single message (blocking if required). The transaction started extends to...

You're failing to reset localCounter to zero when you move to the next sublist. That said, you can do this so much easier: foreach (var subdt in dt.Values) foreach (var item in subdt.Values) yield return item; But it's even easier using LINQ SelectMany return dt.Values.SelectMany(subdt => subdt.Values); Note that the...

Okay, I got the solution now. First of all, there is a BUG in Spring Boot 1.2.1. like mentioned in the question EDIT2. Spring-Boot 1.1.10 throws exception, because it cannot map the content in _embedded. Thats why my content stayed empty. Spring Boot 1.2.1 just leave it emptry without any...

After numerous trial and error, I figured out that the Python script assigned to executableName should be visible from the Java KCL process that is calling it. The quick fix is to set the PATH environmental variable to the directory of the script and make the script an executable file...