gpt4 book ai didi

spring - Resteasy 内置异常未在异常映射器中捕获

转载 作者:行者123 更新时间:2023-12-04 18:23:02 26 4
gpt4 key购买 nike

我编写了一些异常映射器来捕获和处理内置的简单异常,如 NotFoundException、MethodNotAllowedException 等,示例代码如下所示:

@Provider
public class NotFoundExceptionMapper implements ExceptionMapper<org.jboss.resteasy.spi.NotFoundException>
{
@Override
Response toResponse(org.jboss.resteasy.spi.NotFoundException exception) {
return Response.status(500).build();
}
}

我还在我的网络过滤器类中编写了一个 try catch block 。每当发生 NotFoundException 时,它不会在映射器中捕获,但会转到 Filter 中的 catch block 。

而我尝试了另一个异常映射器类来处理 JsonParsingException。每当发生 Json Parse 异常时,这都能正常工作并从映射器给出正确的响应。

问题仅在于resteasy异常的情况。
此外,Provider 已使用组件扫描中的 include-filter 标记在应用程序上下文中注册。

请指导我如何在映射器类本身中捕获简单的内置异常。

问候,
R M

最佳答案

我有同样的问题。使用 @Component 注释 NotFoundExceptionMapper 应该可以修复它(或将 NotFoundExceptionMapper 作为 bean 添加到应用程序上下文(xml 文件)中)。

当你的 Spring 上下文启动时, NotFoundExceptionMapper 应该被注册(你应该在你的日志中像“Pre-instantiating singletons in ...”)

关于spring - Resteasy 内置异常未在异常映射器中捕获,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10251640/

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