首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以利用RESTEasy的ExceptionMapper为同一异常提供多个处理程序?

是否可以利用RESTEasy的ExceptionMapper为同一异常提供多个处理程序?
EN

Stack Overflow用户
提问于 2021-05-21 01:39:42
回答 1查看 102关注 0票数 1

在处理RESTEasy异常时,执行自定义异常处理通常非常简单(在本例中,目的是在接收HTTP请求时处理编组问题):

代码语言:javascript
复制
@Provider
class MissingKotlinParameterExceptionHandler : ExceptionMapper<MissingKotlinParameterException> {
    override fun toResponse(exception: MissingKotlinParameterException?): Response {
        println("my MissingKotlinParameterException mapper")
        return Response.serverError().build()
    }
}

然而,我遇到的特殊挑战是不同的端点抛出相同的异常。例如,由于架构规范的原因,让/service1/foo/service2/bar返回完全不同的错误有效负载。有没有可能根据某种配置或包结构来分离实现?

EN

回答 1

Stack Overflow用户

发布于 2021-05-21 03:13:20

您可以使用以下命令将资源信息注入ExceptionMapper类:

代码语言:javascript
复制
@Context ResourceInfo info; // this is the java version

然后在toResponse中使用该字段,以确定为请求提供服务的资源方法。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67625451

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档