我的应用程序利用了Spring事件
*
这些事件很多。有没有办法处理来自这些订阅方法的潜在异常?
理想情况下,类似于在Web MVC中处理RequestMapping请求的异常的方式,即
@Resource
ApplicationEventPublisher publisher;
publisher.publishEvent(myEvent);
...
@TransactionalEventListener(phase = TransactionPhase.AFTER_COMMIT)
public void handleEvent(MyEvent myEvent)
答案 0 :(得分:1)
在这种情况下,您可能会使用ApplicationEventMulticaster
,特别是SimpleApplicationEventMulticaster
。 ApplicationEventMulticaster
实际上只是Publisher
的一个功能更强大的版本,它使您可以执行诸如异步发布之类的事情。
但是,您要在此处寻找的功能是Multicaster
上的#setErrorHandler
方法,您可以在其中设置标准的Spring ErrorHandler
,或者(可能是您想要的),将自己的内容滚动到ErrorHandler
界面上。