Java Camel Hystrix EIP-用于防止调用回退的IgnoreExceptions
在ApacheHystrix EIP中,如何防止对错误请求异常的回退方法的调用。我试图从我的请求调度程序处理器抛出“hystrixbadderquestexception”,但我仍然看到回退被触发。有没有办法解决这个问题Java Camel Hystrix EIP-用于防止调用回退的IgnoreExceptions,java,apache-camel,hystrix,Java,Apache Camel,Hystrix,在ApacheHystrix EIP中,如何防止对错误请求异常的回退方法的调用。我试图从我的请求调度程序处理器抛出“hystrixbadderquestexception”,但我仍然看到回退被触发。有没有办法解决这个问题 /* in route builder class */ public void configure() throws Exception { .hystrix() .hystrixConfiguration() .circuitBre
/* in route builder class */
public void configure() throws Exception {
.hystrix()
.hystrixConfiguration()
.circuitBreakerEnabled(circuitBreakerConfig.isEnabled())
.executionTimeoutInMilliseconds(circuitBreakerConfig.getConnectionTimeoutInMilliseconds())
.circuitBreakerErrorThresholdPercentage(circuitBreakerConfig.getErrorThresholdPercentage())
.circuitBreakerSleepWindowInMilliseconds(circuitBreakerConfig.getSleepWindowInMilliseconds())
.circuitBreakerRequestVolumeThreshold(circuitBreakerConfig.getRequestVolumeThreshold())
.metricsRollingStatisticalWindowInMilliseconds(circuitBreakerConfig.getRollingPercentileWindowInMilliseconds())
.end()
.to("requestDispatcher")
.onFallback()
.log(LoggingLevel.INFO, "Fallback:")
.bean("responsehandler", "getFallbackResponse")
.stop()
.end()
}
/* in dispatcher class */
private Exchange dispatchRequest(Exchange exchange) {
if (exception instanceof HttpOperationFailedException) {
Integer statusCode = ((HttpOperationFailedException) exception).getStatusCode();
if(statusCode == 400) {
throw new HystrixBadRequestException("Hystrix bad request");
}
}
}
这一点目前未在camel hystrix中实现。我已经登录了一张票证,以便在即将发布的版本中添加此内容: