如何在 SpringBoot 代码异常的情况下简单地重新排队 RabbitMQ 消息
How to simply requeue a RabbitMQ message in case of code exception with SpringBoot
我想学习一种在 SpringBoot 应用程序中抛出异常时重新排队 RabbitMQ 的简单方法。
@RabbitListener(queues = TRANSACTION_171_REQUEST_QUEUE, errorHandler = "receiverExceptionHandler" )
public void listen171RequestsQueue(Transaction171Request request) {
try {
Transaction171Response response = null;
send171Response("OK", request.getNumeroFormularioRenach());
} catch (Exception e){
//Requeue message
}
}
我的代码行为是使用一条消息并将它从队列中取出,具体取决于它发生了什么。如果抛出异常,我想在 RabbitMQ 中重新排队消息。
你能帮帮我吗?
我正在使用 Java 11.
在 SpringBoot 应用程序中工作
RabbitMQ 的默认行为是在出现未处理的异常时重新排队。在您的情况下,您可以删除 try..catch 块或在 catch 块中仅 re-throw 异常。
我想学习一种在 SpringBoot 应用程序中抛出异常时重新排队 RabbitMQ 的简单方法。
@RabbitListener(queues = TRANSACTION_171_REQUEST_QUEUE, errorHandler = "receiverExceptionHandler" )
public void listen171RequestsQueue(Transaction171Request request) {
try {
Transaction171Response response = null;
send171Response("OK", request.getNumeroFormularioRenach());
} catch (Exception e){
//Requeue message
}
}
我的代码行为是使用一条消息并将它从队列中取出,具体取决于它发生了什么。如果抛出异常,我想在 RabbitMQ 中重新排队消息。
你能帮帮我吗?
我正在使用 Java 11.
在 SpringBoot 应用程序中工作RabbitMQ 的默认行为是在出现未处理的异常时重新排队。在您的情况下,您可以删除 try..catch 块或在 catch 块中仅 re-throw 异常。