title: How to ask RabbitMQ to retry when business Exception occurs in Spring Asynchronous MessageListener use case
body: <p>I have a Spring AMQP message listener running.</p>
  
  <pre><code>public class ConsumerService implements MessageListener {
  
      @Autowired
      RabbitTemplate rabbitTemplate;
  
      @Override
      public void onMessage(Message message) {
          try {
              testService.process(message); //This process method can throw Business Exception
          } catch (BusinessException e) {
             //Here we can just log the exception. How the retry attempt is made?
          } catch (Exception e) {
             //Here we can just log the exception.  How the retry attempt is made?
          }
      }
  }
  </code></pre>
  
  <p>As you can see, there could be exception coming out during process. I want to retry because of a particular error in Catch block. I cannot through exception in onMessage. 
  How to tell RabbitMQ to there is an exception and retry?</p>