You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2012/09/04 09:57:50 UTC
git commit: WICKET-4715 WebApplication doesn't recognize if an
incoming request is multipart.
Updated Branches:
refs/heads/wicket-1.5.x dff45e1e5 -> 70674289c
WICKET-4715 WebApplication doesn't recognize if an incoming request is multipart.
Re-check the already parsed FileItems for max size (set by the form).
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/70674289
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/70674289
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/70674289
Branch: refs/heads/wicket-1.5.x
Commit: 70674289c5df1afce96409b9580aa9034157ac1f
Parents: dff45e1
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Tue Sep 4 09:53:51 2012 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Tue Sep 4 09:57:42 2012 +0200
----------------------------------------------------------------------
.../servlet/MultipartServletWebRequestImpl.java | 16 +++++++++++++++
1 files changed, 16 insertions(+), 0 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/70674289/wicket-core/src/main/java/org/apache/wicket/protocol/http/servlet/MultipartServletWebRequestImpl.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/protocol/http/servlet/MultipartServletWebRequestImpl.java b/wicket-core/src/main/java/org/apache/wicket/protocol/http/servlet/MultipartServletWebRequestImpl.java
index 73f109d..2869cec 100644
--- a/wicket-core/src/main/java/org/apache/wicket/protocol/http/servlet/MultipartServletWebRequestImpl.java
+++ b/wicket-core/src/main/java/org/apache/wicket/protocol/http/servlet/MultipartServletWebRequestImpl.java
@@ -35,6 +35,7 @@ import org.apache.wicket.util.string.StringValue;
import org.apache.wicket.util.upload.DiskFileItemFactory;
import org.apache.wicket.util.upload.FileItem;
import org.apache.wicket.util.upload.FileItemFactory;
+import org.apache.wicket.util.upload.FileUploadBase;
import org.apache.wicket.util.upload.FileUploadException;
import org.apache.wicket.util.upload.ServletFileUpload;
import org.apache.wicket.util.upload.ServletRequestContext;
@@ -400,6 +401,21 @@ public class MultipartServletWebRequestImpl extends MultipartServletWebRequest
public MultipartServletWebRequest newMultipartWebRequest(Bytes maxSize, String upload)
throws FileUploadException
{
+ for (Map.Entry<String, List<FileItem>> entry : files.entrySet())
+ {
+ List<FileItem> fileItems = entry.getValue();
+ for (FileItem fileItem : fileItems)
+ {
+ if (fileItem.getSize() > maxSize.bytes())
+ {
+ String fieldName = entry.getKey();
+ FileUploadException fslex = new FileUploadBase.FileSizeLimitExceededException("The field " +
+ fieldName + " exceeds its maximum permitted " + " size of " +
+ maxSize + " characters.", fileItem.getSize(), maxSize.bytes());
+ throw fslex;
+ }
+ }
+ }
return this;
}