You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When setting an X-Forwarded-Prefix and having an request URI that contains escape sequences like %23 an URISyntaxException exception is thrown from java.net.URI$Parser.parse in ForwardedHeaderTransformer as the path is decoded in ForwardedHeaderTransformer:
exception: "java.lang.IllegalStateException: Invalid URI path: "[...]/api/redeliveries/SN23#23232323#23"
at org.springframework.http.server.reactive.DefaultServerHttpRequestBuilder.getUriToUse(DefaultServerHttpRequestBuilder.java:172)
at org.springframework.http.server.reactive.DefaultServerHttpRequestBuilder.build(DefaultServerHttpRequestBuilder.java:134)
at org.springframework.web.server.adapter.ForwardedHeaderTransformer.apply(ForwardedHeaderTransformer.java:104)
at org.springframework.web.server.adapter.HttpWebHandlerAdapter.handle(HttpWebHandlerAdapter.java:227)
at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext$ServerManager.handle(ReactiveWebServerApplicationContext.java:205)
at org.springframework.http.server.reactive.ReactorHttpHandlerAdapter.apply(ReactorHttpHandlerAdapter.java:65)
at org.springframework.http.server.reactive.ReactorHttpHandlerAdapter.apply(ReactorHttpHandlerAdapter.java:40)
at reactor.netty.http.server.HttpServerHandle.onStateChange(HttpServerHandle.java:63)
[snip]
Caused by: java.net.URISyntaxException: Illegal character in fragment at index 102: [...]/api/redeliveries/SN23#23232323#23
at java.base/java.net.URI$Parser.fail(Unknown Source)
at java.base/java.net.URI$Parser.checkChars(Unknown Source)
at java.base/java.net.URI$Parser.parse(Unknown Source)
at java.base/java.net.URI.<init>(Unknown Source)
at org.springframework.http.server.reactive.DefaultServerHttpRequestBuilder.getUriToUse(DefaultServerHttpRequestBuilder.java:169)
... 34 common frames omitted
Thanks for the report and PR. Note for the future that you don't have to create both, and if you do we close the issue as superseded by the PR. The issue can be described on the PR instead.
When setting an X-Forwarded-Prefix and having an request URI that contains escape sequences like
%23
anURISyntaxException
exception is thrown fromjava.net.URI$Parser.parse
inForwardedHeaderTransformer
as the path is decoded inForwardedHeaderTransformer
:PR: #23305
The text was updated successfully, but these errors were encountered: