From 5f932b01589370e933a4a14efe1d4464f340606f Mon Sep 17 00:00:00 2001 From: Olga Maciaszek-Sharma Date: Tue, 19 Jan 2021 13:12:39 +0100 Subject: [PATCH] Run FeignLoadBalancerAutoConfiguration after BlockingLoadBalancerClientAutoConfiguration and LoadBalancerAutoConfiguration. Fixes gh-454. --- .../loadbalancer/FeignLoadBalancerAutoConfiguration.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/spring-cloud-openfeign-core/src/main/java/org/springframework/cloud/openfeign/loadbalancer/FeignLoadBalancerAutoConfiguration.java b/spring-cloud-openfeign-core/src/main/java/org/springframework/cloud/openfeign/loadbalancer/FeignLoadBalancerAutoConfiguration.java index 3075cca1..ec419002 100644 --- a/spring-cloud-openfeign-core/src/main/java/org/springframework/cloud/openfeign/loadbalancer/FeignLoadBalancerAutoConfiguration.java +++ b/spring-cloud-openfeign-core/src/main/java/org/springframework/cloud/openfeign/loadbalancer/FeignLoadBalancerAutoConfiguration.java @@ -19,11 +19,14 @@ package org.springframework.cloud.openfeign.loadbalancer; import feign.Client; import feign.Feign; +import org.springframework.boot.autoconfigure.AutoConfigureAfter; import org.springframework.boot.autoconfigure.AutoConfigureBefore; import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.cloud.client.loadbalancer.LoadBalancerAutoConfiguration; import org.springframework.cloud.client.loadbalancer.LoadBalancerClient; +import org.springframework.cloud.loadbalancer.config.BlockingLoadBalancerClientAutoConfiguration; import org.springframework.cloud.loadbalancer.support.LoadBalancerClientFactory; import org.springframework.cloud.openfeign.FeignAutoConfiguration; import org.springframework.cloud.openfeign.support.FeignHttpClientProperties; @@ -40,6 +43,7 @@ import org.springframework.context.annotation.Import; @ConditionalOnClass(Feign.class) @ConditionalOnBean({ LoadBalancerClient.class, LoadBalancerClientFactory.class }) @AutoConfigureBefore(FeignAutoConfiguration.class) +@AutoConfigureAfter({ BlockingLoadBalancerClientAutoConfiguration.class, LoadBalancerAutoConfiguration.class }) @EnableConfigurationProperties(FeignHttpClientProperties.class) @Configuration(proxyBeanMethods = false) // Order is important here, last should be the default, first should be optional