While using Spring Boot 3.0.0-RC1 with both spring-boot-starter-web and spring-boot-starter-webflux dependencies (Gradle), creating HttpServiceProxyFactory via
@Bean
HttpServiceProxyFactory httpServiceProxyFactory(WebClient webClient) {
return HttpServiceProxyFactory.builder(WebClientAdapter.forClient(webClient)).build();
}
throws the following exception
...
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'httpServiceProxyFactory' defined in class path resource [...]: HttpServiceProxyFactory was created through the builder
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:606) ~[spring-beans-6.0.0-RC2.jar:6.0.0-RC2]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:521) ~[spring-beans-6.0.0-RC2.jar:6.0.0-RC2]
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:326) ~[spring-beans-6.0.0-RC2.jar:6.0.0-RC2]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-6.0.0-RC2.jar:6.0.0-RC2]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:324) ~[spring-beans-6.0.0-RC2.jar:6.0.0-RC2]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) ~[spring-beans-6.0.0-RC2.jar:6.0.0-RC2]
at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) ~[spring-beans-6.0.0-RC2.jar:6.0.0-RC2]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1375) ~[spring-beans-6.0.0-RC2.jar:6.0.0-RC2]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1295) ~[spring-beans-6.0.0-RC2.jar:6.0.0-RC2]
at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:880) ~[spring-beans-6.0.0-RC2.jar:6.0.0-RC2]
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:784) ~[spring-beans-6.0.0-RC2.jar:6.0.0-RC2]
... 47 common frames omitted
Caused by: java.lang.IllegalStateException: HttpServiceProxyFactory was created through the builder
at org.springframework.util.Assert.state(Assert.java:76) ~[spring-core-6.0.0-RC2.jar:6.0.0-RC2]
at org.springframework.web.service.invoker.HttpServiceProxyFactory.setEmbeddedValueResolver(HttpServiceProxyFactory.java:134) ~[spring-web-6.0.0-RC2.jar:6.0.0-RC2]
at org.springframework.context.support.ApplicationContextAwareProcessor.invokeAwareInterfaces(ApplicationContextAwareProcessor.java:94) ~[spring-context-6.0.0-RC2.jar:6.0.0-RC2]
at org.springframework.context.support.ApplicationContextAwareProcessor.postProcessBeforeInitialization(ApplicationContextAwareProcessor.java:85) ~[spring-context-6.0.0-RC2.jar:6.0.0-RC2]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:420) ~[spring-beans-6.0.0-RC2.jar:6.0.0-RC2]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1745) ~[spring-beans-6.0.0-RC2.jar:6.0.0-RC2]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:599) ~[spring-beans-6.0.0-RC2.jar:6.0.0-RC2]
... 57 common frames omitted
Creating HttpServiceProxyFactory via
@Bean
HttpServiceProxyFactory httpServiceProxyFactory(WebClient webClient) {
return new HttpServiceProxyFactory(WebClientAdapter.forClient(webClient));
}
works just fine.
Comment From: mdeinum
Related / Duplicate of : https://github.com/spring-projects/spring-framework/issues/29376
Comment From: wilkinsona
Thanks, @mdeinum.