我在这里基于JAX-RS / RestEasy的遗留代码,其中一个ExceptionMapper<SomeException>
通过@Provider
在其中一个父项目中注册,因此它将在{{{{{}}时调用在Rest API中抛出1}}。不幸的是,许多子模块中的一个(并且只有一个)需要不同的异常处理,这导致代码如......
SomeException
显然这很糟糕,我一直在问自己是否有类似于Spring try {
...
} catch(SomeException) {
...call some other ExceptionMapper manually
}
的方法,以“覆盖”子项目中的默认@Primary
并将其替换为另一个项目,将删除许多ExceptionMapper
块的需要......不幸的是,我还没有找到解决方案。虽然似乎可以“混合”Spring和RestEasy(例如,如果我使try-catch
成为ExceptionMapper
,这个bean也将被RestEasy使用),但没有像{{1}那样} ...