You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Ernesto Reinaldo Barreiro (Jira)" <ji...@apache.org> on 2025/05/19 09:35:00 UTC
[jira] [Comment Edited] (WICKET-7154) wicket multipart support is broken for tomcat 11.0.6
[ https://issues.apache.org/jira/browse/WICKET-7154?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17952549#comment-17952549 ]
Ernesto Reinaldo Barreiro edited comment on WICKET-7154 at 5/19/25 9:34 AM:
----------------------------------------------------------------------------
See
[https://github.com/jakartaee/servlet/issues/66]
and
https://github.com/apache/tomcat/pull/856
was (Author: reiern70):
See
[https://github.com/jakartaee/servlet/issues/66]
and
https://github.com/jakartaee/servlet/issues/66
> 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, 10.5.0
> Reporter: Ernesto Reinaldo Barreiro
> Assignee: Ernesto Reinaldo Barreiro
> Priority: Blocker
> Fix For: 10.6.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|https://lists.apache.org/thread/99r9wtlqrbm0gc309w985yl1khfp41nt] 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)