首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >针对某些类型的异常的resilience4j隔板跳过回退方法

针对某些类型的异常的resilience4j隔板跳过回退方法
EN

Stack Overflow用户
提问于 2020-10-09 21:09:54
回答 1查看 135关注 0票数 0

我使用reslience4j隔板将活动线程的数量限制为我的一个服务方法。当线程限制超过配置时,它应该转到回退方法,这是预期发生的。

但是,作为我方法中业务逻辑的一部分,当验证失败时,我会向我的使用者抛出带有自定义消息的BadRequestException。在这里,当checkedException发生时,控件转到回退方法,在理想情况下,不应该是这种情况。

那么,对于某些类型的异常,我们是否有任何配置可以跳过控制转到回退方法,就像我们在Hystrix中的配置一样?

代码语言:javascript
复制
@Bulkhead(name="bhName" fallbackMethod="fallbackMethod")
public void doSomething(){

    //validatiion
    // if validation succeeds
         //do some business logic
    // else if validation fails
        throw BadRequestException("Error Message")
}

public void fallbackMethod(Exception ex){
   log.info("The number of concurrency limit exceeded");
   return null;
} 
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-10-19 15:23:41

只需使用不同的fallbackMethod签名:

代码语言:javascript
复制
public void fallbackMethod(BulkheadFullException ex){
   log.info("The number of concurrency limit exceeded");
   return null;
} 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64280768

复制
相关文章

相似问题

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