Due to #31280, ReactorResourceFactory
is now used from org.springframework.http.client.ReactorNettyClientRequestFactory
in addition to org.springframework.http.client.reactive.ReactorClientHttpConnector
, so org.springframework.http.client.reactive
is likely not the right package anymore for this class. After a discussion on the various options possible, the Spring Framework teams agreed on moving ReactorResourceFactory
to org.springframework.http.client
package, which is a breaking chance but one worth doing to have a sane arrangement.
I will communicate with the Spring Boot team upfront about that change.
Comment From: wilkinsona
This is a breaking change for Boot users as defining a custom ReactorResourceFactory
is a documented feature:
- https://docs.spring.io/spring-boot/docs/3.1.x/reference/htmlsingle/#web.reactive.reactive-server-resources-configuration
- https://docs.spring.io/spring-boot/docs/3.1.x/reference/htmlsingle/#io.rest-client.webclient.runtime
- https://docs.spring.io/spring-boot/docs/3.1.x/reference/htmlsingle/#howto.http-clients.webclient-reactor-netty-customization
Given this, can we please have org.springframework.http.client.reactive.ReactorResourceFactory
reinstated in deprecated form?
Comment From: sdeleuze
Yes, I reopen this issue to perform what @wilkinsona suggested.
Comment From: chrislhardin
yeah def a breaking change and to work around, I had to do an exclude for org.springframework.boot.autoconfigure.web.reactive.function.client.ClientHttpConnectorAutoConfiguration,org.springframework.boot.autoconfigure.web.reactive.function.client.WebClientAutoConfiguration to get around it but that may not work for other situations. Having it back in at least deprecated form until spring-boot-autoconfigure is updated to support it would be nice.
Comment From: sdeleuze
I have reintroduced a deprecated ReactorResourceFactory
in org.springframework.http.client.reactive
package that extends the one in org.springframework.http.client
package to avoid an API breaking change and to provide a smoother upgrade experience.