关于 hystrix 的异常 fallback method wasn't found

在 Spring Cloud 中使用断路器 hystrix 后,可能会遇到异常:com.netflix.hystrix.contrib.javanica.exception.FallbackDefinitionException: fallback method wasn't found

典型如下:

@HystrixCommand(fallbackMethod = "fallbackHi")
public String getHi(String x) {
    String msg = restTemplate.getForObject("http://jack/hi", String.class);
    return msg;
}

public String fallbackHi(){
    return "can't say hi";
}

这样就会出现如上所述的异常,这是因为指定的 备用方法 和 原方法 的参数个数,类型不同造成的;

所以需要统一参数的个数,类型:

@HystrixCommand(fallbackMethod = "fallbackHi")
public String getHi(String x) {
    String msg = restTemplate.getForObject("http://jack/hi", String.class);
    return msg;
}

public String fallbackHi(String x){
    return "can't say hi, and get: " + x;
}

这样就可以解决上述的异常了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值