@jmslistener不与@enableSync一起工作

zi8p0yeb  于 2021-07-13  发布在  Java
关注(0)|答案(1)|浏览(358)

我在我的spring引导应用程序中使用jmslistener和client\u acknowledge session类型轮询sqs,它工作正常,对于错误我只抛出一个异常,jmslistener将消息放回sqs。我添加了带有@async和@enableasync(在config中)的注解,simpleasyncuncaughtexceptionhandler.class正在捕获异常。我相信这就是为什么在发生错误的情况下sqs消息没有被发送到sqs的原因。请告诉我@async annotation和@jmslistener annotation是否合理。

@Async
@JmsListener(destination = "${queue.name}")
public void listenEvent(@Headers Map<String, String> headers, @Payload String event) {
   //process event
}
ki0zmccv

ki0zmccv1#

@Async 以及 @JmsListener 在组合中没有意义。
这个 @JmsListener 方法已在其自己的线程中运行。

相关问题