From d6f375490ae88308b0bfcb3b5ac96115694d7b4a Mon Sep 17 00:00:00 2001 From: Eduard Wirch Date: Tue, 7 Apr 2020 21:20:07 +0200 Subject: [PATCH] Fix circular dependency in ZuulProxyAutoConfiguration (#3769) ZuulProxyAutoConfiguration declared a ServiceRouteMapper bean and required it for a field injection at the same time. Fixes gh-3733 --- .../cloud/netflix/zuul/ZuulProxyAutoConfiguration.java | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/spring-cloud-netflix-zuul/src/main/java/org/springframework/cloud/netflix/zuul/ZuulProxyAutoConfiguration.java b/spring-cloud-netflix-zuul/src/main/java/org/springframework/cloud/netflix/zuul/ZuulProxyAutoConfiguration.java index 0d0759111..7049198fa 100644 --- a/spring-cloud-netflix-zuul/src/main/java/org/springframework/cloud/netflix/zuul/ZuulProxyAutoConfiguration.java +++ b/spring-cloud-netflix-zuul/src/main/java/org/springframework/cloud/netflix/zuul/ZuulProxyAutoConfiguration.java @@ -75,9 +75,6 @@ public class ZuulProxyAutoConfiguration extends ZuulServerAutoConfiguration { @Autowired private DiscoveryClient discovery; - @Autowired - private ServiceRouteMapper serviceRouteMapper; - @Override public HasFeatures zuulFeature() { return HasFeatures.namedFeature("Zuul (Discovery)", @@ -86,9 +83,10 @@ public class ZuulProxyAutoConfiguration extends ZuulServerAutoConfiguration { @Bean @ConditionalOnMissingBean(DiscoveryClientRouteLocator.class) - public DiscoveryClientRouteLocator discoveryRouteLocator() { + public DiscoveryClientRouteLocator discoveryRouteLocator( + ServiceRouteMapper serviceRouteMapper) { return new DiscoveryClientRouteLocator(this.server.getServlet().getContextPath(), - this.discovery, this.zuulProperties, this.serviceRouteMapper, + this.discovery, this.zuulProperties, serviceRouteMapper, this.registration); }