ExtensionsFilter cacheFileSizeErrors Does Not Work As Advertised ----------------------------------------------------------------
Key: TOMAHAWK-1521 URL: https://issues.apache.org/jira/browse/TOMAHAWK-1521 Project: MyFaces Tomahawk Issue Type: Bug Components: File Upload Affects Versions: 1.1.9 Environment: commons-fileupload-1.2.1 Reporter: JZ With the extensions filter configured with cacheFileSizeErrors=true and uploadMaxFileSize=1M, I get the stacktrace below when uploading a file larger than 1M. This is NOT the expected stack trace. Note that ServletChacheFileSizeErrorsFileUpload is used. However, line 108 in that class has a comment which states that the line "throws a SizeLimitExceededException (wrapped by a FileUploadIOException) if the request is longer than the max size" That is not accurrate. The SizeLimitExceededException is NOT, in fact, wrapped. As a result, ServletChacheFileSizeErrorsFileUpload does not trap exceptions at the right level and the SizeLimitExceededException bubbles up to the MultipartRequestWrapper (which is the source of the WARN - level stack trace below). Basically, this behaviour renders the cacheFileSizeErrors property useless. Here's the stacktrace: 2010-06-15 15:07:57,234 WARN org.apache.myfaces.webapp.filter.MultipartRequestWrapper] - <SizeLimitExceededException while uploading file.> [] org.apache.commons.fileupload.FileUploadBase$SizeLimitExceededException: the request was rejected because its size (3506126) exceeds the configured maximum (1048576) at org.apache.commons.fileupload.FileUploadBase$FileItemIteratorImpl.<init>(FileUploadBase.java:914) at org.apache.commons.fileupload.FileUploadBase.getItemIterator(FileUploadBase.java:331) at org.apache.myfaces.webapp.filter.servlet.ServletChacheFileSizeErrorsFileUpload.parseRequestCatchingFileSizeErrors(ServletChacheFileSizeErrorsFileUpload.java:108) at org.apache.myfaces.webapp.filter.MultipartRequestWrapper.parseRequest(MultipartRequestWrapper.java:131) at org.apache.myfaces.webapp.filter.MultipartRequestWrapper.getParameter(MultipartRequestWrapper.java:274) at javax.servlet.ServletRequestWrapper.getParameter(ServletRequestWrapper.java:158) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.