diff --git a/spring-web/src/main/java/org/springframework/web/multipart/support/MultipartResolutionDelegate.java b/spring-web/src/main/java/org/springframework/web/multipart/support/MultipartResolutionDelegate.java index 305b639642f..42248276181 100644 --- a/spring-web/src/main/java/org/springframework/web/multipart/support/MultipartResolutionDelegate.java +++ b/spring-web/src/main/java/org/springframework/web/multipart/support/MultipartResolutionDelegate.java @@ -122,18 +122,18 @@ public abstract class MultipartResolutionDelegate { return null; } } - else if (servletPartClass == parameter.getNestedParameterType()) { - return (isMultipart ? RequestPartResolver.resolvePart(request, name) : null); - } - else if (isPartCollection(parameter)) { - return (isMultipart ? RequestPartResolver.resolvePartList(request, name) : null); - } - else if (isPartArray(parameter)) { - return (isMultipart ? RequestPartResolver.resolvePartArray(request, name) : null); - } - else { - return UNRESOLVABLE; + else if (servletPartClass != null) { + if (servletPartClass == parameter.getNestedParameterType()) { + return (isMultipart ? RequestPartResolver.resolvePart(request, name) : null); + } + else if (isPartCollection(parameter)) { + return (isMultipart ? RequestPartResolver.resolvePartList(request, name) : null); + } + else if (isPartArray(parameter)) { + return (isMultipart ? RequestPartResolver.resolvePartArray(request, name) : null); + } } + return UNRESOLVABLE; } private static boolean isMultipartFileCollection(MethodParameter methodParam) {