[ 
https://issues.apache.org/jira/browse/WICKET-7154?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17950759#comment-17950759
 ] 

ASF subversion and git services commented on WICKET-7154:
---------------------------------------------------------

Commit d5ef31cde943c2e516ce2a040f1b24326d6a81f1 in wicket's branch 
refs/heads/reiern70/WICKET-7154 from reiern70
[ https://gitbox.apache.org/repos/asf?p=wicket.git;h=d5ef31cde9 ]

[WICKET-7154] use getQueryParameters to avoid tomcat parsing the multipart 
request before we create MultipartServletWebRequest.


> wicket multipart support is broken for tomcat 11.0.6
> ----------------------------------------------------
>
>                 Key: WICKET-7154
>                 URL: https://issues.apache.org/jira/browse/WICKET-7154
>             Project: Wicket
>          Issue Type: Improvement
>    Affects Versions: 10.4.0
>            Reporter: Ernesto Reinaldo Barreiro
>            Priority: Blocker
>             Fix For: 11.0.0
>
>
> It seems wicket file upload functionality that depends on 
> *commons-fileupload2* is broken for tomcat 11.x (I have tested with 11.0.5 
> and 11.0.6).
> First I though this is because tomcat 10.x is using 
> commons-fileupload2-jakarta-servlet5 thus I upgraded to 
> commons-fileupload2-jakarta-servlet6 but the problem is the same.
>  
> It seems that tomcat 11.0.6 is already handling multipart and "consuming" the 
> request thus when we file-upload2 tries to parse the request the underlying 
> IdentityInputFilter
>  
> ([https://github.com/apache/tomcat/blob/11.0.x/java/org/apache/coyote/http11/filters/IdentityInputFilter.java)|https://github.com/apache/tomcat/blob/11.0.x/java/org/apache/coyote/http11/filters/IdentityInputFilter.java_]
>  
> has already "consumed" the request.  This also affects upload progress 
> functionality.
> {*}Note{*}: I have tried to solve this is wicket but I think it can't be 
> solved in a general way...
> {*}Why{*}: whenever to call getPostParameters in wicket tomcat will parse the 
> multipart by itself and the request will be consumed. Thus, if anything 
> before Form is processed  calls 
> webRequest.getPostParameters().getParameterValue("XXX") then 
> MultipartServletWebRequest will not work (as tomcat will consume the 
> request).  I have reported this on Tomcat users list and they requested a 
> "quick-start". I created one using wicket. 
>  
> {*}Additional info{*}: Tomcat 11 does not support multipart "out of the box". 
> You need to either set 
>  
> <Context allowCasualMultipartParsing="true">
> ...
> </Context>
>  
> or us @MultipartConfig on a wicket servlet.
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to