gpt4 book ai didi

java - Spring JMS : Set ErrorHandler for @JmsListener annotated method

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:39:46 24 4
gpt4 key购买 nike

我正在使用一个 @JmsListener 注释方法来监听 JMS 消息,如下所示。

@JmsListener(destination="exampleQueue")  
public void fetch(@Payload String message){
process(message);
}

当这个方法执行导致异常时,我得到一个警告日志

Execution of JMS message listener failed, and no ErrorHandler has been set.

如何设置 ErrorHandler 来处理这种情况。我正在使用 spring boot 1.3.3.RELEASE

最佳答案

当使用像@EnableJms, @JmsListener 等注解来和Spring JMS一起工作时,ErrorHandler可以这样设置

@Bean
public DefaultJmsListenerContainerFactory jmsListenerContainerFactory(ConnectionFactory connectionFactory, ExampleErrorHandler errorHandler) {
DefaultJmsListenerContainerFactory factory = new DefaultJmsListenerContainerFactory();
factory.setConnectionFactory(connectionFactory);
factory.setErrorHandler(errorHandler);
return factory;
}

@Service
public class ExampleErrorHandler implements ErrorHandler{
@Override
public void handleError(Throwable t) {
//handle exception here
}
}

此处提供更多详细信息:Annotation-driven listener endpoints

关于java - Spring JMS : Set ErrorHandler for @JmsListener annotated method,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40654586/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com