У меня есть веб-сайт Spring MVC с двумя разными страницами, которые имеют разные формы для загрузки разных файлов. У одного из них должно быть ограничение на 2 МБ, а у другого должно быть ограничение 50 МБ.Изменение ограничения размера файла (maxUploadSize) в зависимости от контроллера
Прямо сейчас, у меня есть это ограничение в мое приложение-config.xml:
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!-- one of the properties available; the maximum file size in bytes (2097152 B = 2 MB) -->
<property name="maxUploadSize" value="2097152 "/>
</bean>
И я мог бы разрешить исключение maxUploadSize в моем главном контроллере так:
@Override
public @ResponseBody
ModelAndView resolveException(HttpServletRequest arg0,
HttpServletResponse arg1, Object arg2, Exception exception) {
ModelAndView modelview = new ModelAndView();
String errorMessage = "";
if (exception instanceof MaxUploadSizeExceededException) {
errorMessage = String.format("El tamaño del fichero debe ser menor de %s", UnitConverter.convertBytesToStringRepresentation(((MaxUploadSizeExceededException) exception)
.getMaxUploadSize()));
} else {
errorMessage = "Unexpected error: " + exception.getMessage();
}
saveError(arg0, errorMessage);
modelview = new ModelAndView();
modelview.setViewName("redirect:" + getRedirectUrl());
}
return modelview;
}
Но это, очевидно, контролирует только ограничение 2 МБ. Как я могу сделать ограничение для 20 МБ одного? Я пробовал это решение: https://stackoverflow.com/a/11792952/1863783, который обновляет ограничение во время выполнения. Однако это обновляет его для каждой сессии и каждого контроллера. Итак, если один пользователь загружает файл для первой формы, другой, используя загрузку во второй форме, должен иметь ограничение на первый ...
Любая помощь? спасибо
проверьте это [введите ссылку здесь] (http: // stackoverflow.ком/вопросы/27061209/весна загрузки ClassNotFoundException-когда-настройка-maxuploadsize-оф-commonmult/29635044 # 29635044) –