Author: andrei_exadel
Date: 2008-07-08 06:54:54 -0400 (Tue, 08 Jul 2008)
New Revision: 9445
Modified:
trunk/framework/impl/src/main/java/org/ajax4jsf/webapp/BaseFilter.java
Log:
RF-3173
Modified: trunk/framework/impl/src/main/java/org/ajax4jsf/webapp/BaseFilter.java
===================================================================
--- trunk/framework/impl/src/main/java/org/ajax4jsf/webapp/BaseFilter.java 2008-07-08
10:54:45 UTC (rev 9444)
+++ trunk/framework/impl/src/main/java/org/ajax4jsf/webapp/BaseFilter.java 2008-07-08
10:54:54 UTC (rev 9445)
@@ -301,10 +301,15 @@
Map<String, MultipartRequest> sessionsMap = null;
Map<String, Object> percentMap = null;
boolean sendError = Boolean.parseBoolean(request.getParameter(SEND_HTTP_ERROR));
+ String mimeType = xmlFilter.getMimetype();
try {
if (isFileSizeRestricted(request, maxRequestSize)) {
if (sendError) {
+ //request.getInputStream().close();
+ //request.getInputStream().skip(request.getContentLength());
response.sendError(413);
+ System.out.println("413");
+ return;
} else {
printResponse(response,
"<html
id=\"_richfaces_file_upload_size_restricted\"></html>");
@@ -336,9 +341,12 @@
// file
// entry uid
sessionsMap.put(uid, multipartRequest);
-
+
if (multipartRequest.parseRequest()) {
- handleRequest(multipartRequest, response, chain);
+
+ xmlFilter.setMimetype("text/html"); // We need set mimetype as HTML to
avoid
+ // transforming response to XML tree under IE
+ handleRequest(multipartRequest, response, chain);
} else {
printResponse(response,
"<html
id=\"_richfaces_file_upload_stopped\"></html>");
@@ -346,6 +354,7 @@
}
} finally {
if (sessionsMap != null) {
+ xmlFilter.setMimetype(mimeType); // Backup mimetype
sessionsMap.remove(uid);
percentMap.remove(uid);
}
@@ -362,7 +371,7 @@
multipartRequest.stop();
HttpServletResponse httpResponse = (HttpServletResponse) response;
httpResponse
- .setStatus(HttpServletResponse.SC_NO_CONTENT);
+ .setStatus(HttpServletResponse.SC_OK);
httpResponse.getOutputStream().close();
}
}