2013-10-02 3 views
0

У меня есть код, как следуетResourceLoader бросает исключение

public LocalFileStorage(String storageUrl, Resource storageDirectory) { 
    this.storageUrl = storageUrl; 
    try { 
     this.storageDirectory = storageDirectory.getFile(); 
     this.storageDirectory.deleteOnExit(); 
     this.storageDirectory.createNewFile(); 
    } catch (IOException e) { 
     throw new RuntimeException(e); 
    } 
} 

я называю Класс следующим образом.

private ResourceLoader resourceLoader; // from spring 

LocalFileStorage pictureStorage = new LocalFileStorage(Url+ "/resources/", resourceLoader.getResource("/resources/")); 

вызов

resourceLoader.getResource("/resources/") 

бросает исключение. Я думал, что ResourceLoader загружает каталог также потому, что после этого каталог также является файлом.

Моя структура

enter image description here

ответ

0

Как правило, только что-то внутри /WEB-INF/classes, /WEB-INF/lib, /WEB-INF/... будет добавлен к классам и доступны через ClassLoader.getResource(). Папка, к которой вы пытаетесь получить доступ, находится не в WEB-INF и поэтому не будет отображаться в пути к классам.

Предполагая, что вы используете что-то похожее на Maven, вы должны поместить файлы ресурсов под /src/main/resources. Когда ваш проект будет построен, эти файлы будут в конечном итоге в WEB-INF/classes.

Смежные вопросы