This fixes the problem described in #25182

Comma-separated multi value parameters are wrongly injected if constructor injection is used. Only spring-web is affected, webflux works correctly.

For example ...?listOfStrings=1,2 becomes List<String> listOfStrings = ["1,2"], instead of expected List<String> listOfStrings = ["1", "2"]. The reason is that WebRequest#getParameterValues exposes single item params as an array which breaks conversion service later on.

Comment From: encircled

@sbrannen just a kind reminder. Lets review&merge or close it. This bug should be addressed somehow though.

Comment From: sbrannen

Thanks for the reminder.

Since this appears to be a bug, we'll see about getting it merged into main for inclusion in 5.3.7 and potentially for a backport to 5.2.x.

Comment From: encircled

Alright, I will rebase it on the latest master then

Comment From: sbrannen

Alright, I will rebase it on the latest master then

Thanks for rebasing it on main. 😉

Comment From: sbrannen

This has been merged into main in 9ddab9e69b5a1e1e1c87c8542eaa6aac060cc8e9 and revised in 355d394d7fff72844445839a7d8d2b359aec0ced.

Thanks for providing the fix!