8483 Add support for MultipartFile arg type in RequestPartMethodArgumentResolver

This commit is contained in:
Rossen Stoyanchev
2011-06-30 21:04:23 +00:00
parent 26dbfba6c0
commit e0d2e20fc4
2 changed files with 19 additions and 3 deletions

View File

@@ -32,6 +32,7 @@ import org.springframework.web.bind.annotation.RequestPart;
import org.springframework.web.bind.support.WebDataBinderFactory;
import org.springframework.web.context.request.NativeWebRequest;
import org.springframework.web.method.support.ModelAndViewContainer;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.multipart.MultipartRequest;
import org.springframework.web.multipart.RequestPartServletServerHttpRequest;
@@ -77,8 +78,11 @@ public class RequestPartMethodArgumentResolver extends AbstractMessageConverterM
}
String partName = getPartName(parameter);
if (MultipartFile.class.isAssignableFrom(parameter.getParameterType())) {
return multipartRequest.getFile(partName);
}
HttpInputMessage inputMessage = new RequestPartServletServerHttpRequest(multipartRequest, partName);
Object arg = readWithMessageConverters(inputMessage, parameter, parameter.getParameterType());
if (isValidationApplicable(arg, parameter)) {