我有一个抽象类
public abstract class A {
public String makeSomething(String ingredients){
throw new RuntimeException("Can't Make anything");
}
}
这个类在另一个类B(Spring Service)中实现,该类通过传递Ingredients在自己的许多方法中使用makeSomething。类B中的每个方法都用HystrixCommand进行了注释,并为其定义了回退
@Service
public class B extends A {
@HystrixCommand(fallbackMethod = "doNothing")
public void makeTea(String ingredients){
makeSomething(ingredients);
}
public void doNothing(String ingredients){
System.out.println("Doing Nothing");
}
}
现在,当调用类B中的makeTea时,它会从类A中调用makeSomething,然后抛出异常。这应该被包装为HystrixRuntimeException,然后应该调用回退。但我看到了RunTimeException("什么都做不了")。
根据您的描述,我认为Hystrix没有启用。
将@EnableHystrix
注释添加到Application类中,以便启用注释处理。
如果您启用了它,请提供一个更完整的示例,其中可以复制错误。