Browse Source

DispatcherServlet skips multipart resolution if error page exception attribute indicates MultipartException as root cause

Issue: SPR-11716
pull/529/head
Juergen Hoeller 12 years ago
parent
commit
5b47816183
  1. 6
      spring-webmvc/src/main/java/org/springframework/web/servlet/DispatcherServlet.java

6
spring-webmvc/src/main/java/org/springframework/web/servlet/DispatcherServlet.java

@ -904,7 +904,7 @@ public class DispatcherServlet extends FrameworkServlet { @@ -904,7 +904,7 @@ public class DispatcherServlet extends FrameworkServlet {
try {
processedRequest = checkMultipart(request);
multipartRequestParsed = processedRequest != request;
multipartRequestParsed = (processedRequest != request);
// Determine handler for the current request.
mappedHandler = getHandler(processedRequest);
@ -1059,6 +1059,10 @@ public class DispatcherServlet extends FrameworkServlet { @@ -1059,6 +1059,10 @@ public class DispatcherServlet extends FrameworkServlet {
logger.debug("Request is already a MultipartHttpServletRequest - if not in a forward, " +
"this typically results from an additional MultipartFilter in web.xml");
}
else if (request.getAttribute(WebUtils.ERROR_EXCEPTION_ATTRIBUTE) instanceof MultipartException) {
logger.debug("Multipart resolution failed for current request before - " +
"skipping re-resolution for undisturbed error rendering");
}
else {
return this.multipartResolver.resolveMultipart(request);
}

Loading…
Cancel
Save