https://github.com/spring-projects/spring-framework/blob/9a43d2ec208d2e8cd0866431acf26af3529f8677/spring-web/src/main/java/org/springframework/http/converter/FormHttpMessageConverter.java#L354

The contentType could have prams inside of it when it comes into this method.
This line of code will not look at those prams at those prams will will just over write them. Instead of just making a new list here, you should take the content type that came in or was made new in the beginning of this method and start a new list from the prams of the contentType. It could look something like: Map parameters = new LinkedHashMap(contentType.getParameters()); instead of: Map parameters = new LinkedHashMap(2);

This will allow the setting of the prams in the rest controller by adding them to the contentType at that level and this will no longer over write them when working with multipart content types.

Thank you for your time

Alan Bond

Comment From: rstoyanchev

Indeed any parameters that may be present on the input MediaType. We are handling it differently on the WebFlux side where we start with the parameters from the input MediaType and then override "charset" and "boundary". We could do the same in FormHttpMessageConverter as well.

Would that work for you, in other words you're not trying to override either of those, correct?

Comment From: alan-bond

Thank you very much, that will help.