When handling a application/x-www-form-urlencoded request, the FormHttpMessageReadercan only decode them to a MultiValueMap<String, String>. It would be very useful to be able to decode, and ideally validate, requests like this:

    suspend fun export(request: ServerRequest): ServerResponse {
        val exportRequest = request.awaitBody<ExcelExportRequest>()
        return ServerResponse.ok().bodyAndAwait(listOf("someResult").asFlow())
    }

@Validated
data class ExcelExportRequest(
        @get:NotEmpty val cols: List<String>,
        @get:NotEmpty val ids: List<String>
)

Affects: Spring Webflux 5.2.3

Comment From: poutsma

In Spring MVC terms, this feature is called databinding, and it's coming (see #25943).

Even though this issue is older, I'm closing it in favor of #25943, because that one has a more elaborate description.