Affects: 5.2.11.RELEASE

I'm getting URI from third party service which contains percent encoded slashes in the query part. When I pass this URI to WebClient's get().uri() method as URI class instance WebClient url-encodes the percent-signs in the query string.

Expected behaviour is that the URI will be used AS-IS and won't be manipulated as long as it is valid URI.

val uri = URI("http://example.org/test?param=my%2Fexample%2Forg")

println(uri.rawQuery) // prints param=my%2Fexample%2Forg
println(uri.query) // prints param=my/example/org

webClient.get().uri(uri).retrieve().bodyToMono(Void::class.java).block()
// sends GET request to http://example.org/test?param=my%252Fexample%252Forg

Comment From: javolek

Sorry, my fault, I passed the URI to webclient not as URI class instance but as a String. With URI class instance it works as expected.