Как добраться до / публичного за пределами WEB-INF при использовании Spring MVC - PullRequest
0 голосов
/ 08 февраля 2012

У меня возникают трудности с загрузкой изображений в общую папку. Общая папка содержит элемент WEB-INF внутри папки Webapp.

попытки, например this.getClass().getResource("/images/16x16").toString(), возвращают исключение нулевого указателя.

Я добавил папку с изображениями в качестве ресурса

    <mvc:resources mapping="/images/**" location="/public/images/" />

Есть ли способ добиться этого?спасибо за чтение этого

1 Ответ

3 голосов
/ 08 февраля 2012

Прежде всего, вы не должны учитывать, что папка веб-приложения доступна для записи файла.Приложение может быть развернуто как файл war, и если вы повторно развернете приложение, вы потеряете все загруженные файлы.Сохраните загруженные файлы в другом месте.

Во-вторых, Class.getResource() загружает ресурсы из пути к классам.Он не загружается из файловой системы или контекста веб-приложения.Class.getResource() найдет только ресурсы, хранящиеся в классах WEB-INF /, в одном из jar-файлов WEB-INF / lib или во фляге пути к классам контейнера.

Если вам нужно что-то загрузить изВ контексте веб-приложения (что в этом случае не следует делать) используйте ServletContext.getResource () (или getResourceAsStream())

...