Set separate handling for invalid message handling and internal server

errors which should result in requeue instead of reject

Signed-off-by: kaizimmerm <kai.zimmermann@bosch-si.com>
This commit is contained in:
kaizimmerm
2016-06-17 11:32:04 +02:00
parent ecd5647438
commit 20ebbed27f
4 changed files with 6 additions and 4 deletions

View File

@@ -149,7 +149,7 @@ public class AmqpConfiguration {
@Bean(name = { "listenerContainerFactory" })
public SimpleRabbitListenerContainerFactory listenerContainerFactory() {
final SimpleRabbitListenerContainerFactory containerFactory = new SimpleRabbitListenerContainerFactory();
containerFactory.setDefaultRequeueRejected(false);
containerFactory.setDefaultRequeueRejected(true);
containerFactory.setConnectionFactory(connectionFactory);
containerFactory.setConcurrentConsumers(3);
containerFactory.setMaxConcurrentConsumers(10);

View File

@@ -8,6 +8,7 @@
*/
package org.eclipse.hawkbit.simulator.amqp;
import org.springframework.amqp.AmqpRejectAndDontRequeueException;
import org.springframework.amqp.core.Message;
import org.springframework.amqp.core.MessageProperties;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
@@ -55,7 +56,7 @@ public abstract class ReceiverService extends MessageService {
if (contentType != null && contentType.contains("json")) {
return;
}
throw new IllegalArgumentException("Content-Type is not JSON compatible");
throw new AmqpRejectAndDontRequeueException("Content-Type is not JSON compatible");
}
}