【发布时间】:2022-06-14 11:16:25
【问题描述】:
我正在尝试通过替换 Hystrix 作为我的断路器来实现 Resilience4j。 快乐的路径工作得非常好,但是如果发生异常,代码会到达回退方法,但是当我从回退中重新抛出异常时,它永远不会被捕获。 有什么我想念的吗?
public CompletableFuture<String> fallBackMethod(Throwable e) {
String exceptionMessage = "";
if (e != null) {
exceptionMessage = e.getMessage();
LOG.error(" Inside Fallback. Could not reach remote service {}", exceptionMessage);
}
throw new RuntimeException();
}
我希望它会被调用断路器的服务捕获,但每次它都会跳过 catch 块。
我是否可以从回退中重新抛出异常,或者甚至不可能?
谢谢
【问题讨论】:
-
@RobertWinkler,我遇到了同样的问题。你能帮忙吗? documentation 没有涉及这个用例,阅读 code 对我没有帮助,因为我不知道 AOP。谢谢!