Загрузка файлов в Spring + Wicket - PullRequest
3 голосов
/ 03 октября 2010


Какие шаги необходимы для того, чтобы веб-приложение Java (разработанное с использованием Spring + Wicket) могло принимать клиентские загрузки файлов в определенный каталог на сервере.
При поиске ответов на этот вопрос я вижу предложениячто / WEB-INF / some-directory должен использоваться в качестве местоположения для загрузки?
Является ли причиной такой рекомендации?
Доступно ли это местоположение для записи веб-приложением?
Что происходит с этим местоположением приновая версия веб-приложения развернута?Можно ли использовать какой-либо другой каталог?
Спасибо

1 Ответ

1 голос
/ 08 августа 2011

Две возможные причины использования подкаталога WEB-INF:

  • не видно через HTTP

  • ваше приложение обычно имеет доступ к записи

Я бы скорее рекомендовал использовать настраиваемый внешний каталог (например, настроенный в параметре контекста или в файле конфигурации приложения); Таким образом, вы получаете точный контроль над разрешениями каталога.

AFAIK, загрузка файлов в Wicket обеспечивается компонентом FileUploadField , который предоставляет вам объект FileUpload , который вы можете writeTo файл на вашем сервере.

Возможно, вы также захотите настроить / проверить максимальный размер файлов, которые вы хотите принять. В Tomcat это делается через атрибут maxPostSize соединителя (см. Соединитель HTTP )

...