Получить файл под WEB-INF, используя Spring - PullRequest
1 голос
/ 11 декабря 2011

Я пытаюсь получить файл в папке WEB-INF / classes с помощью Spring.

<bean id="myBean" class="path.to.MyBean" >
    <property name="myFile">
        <value>file:WEB-INF/classes/myFile.foo</value>
    </property>
</bean>

Однако, когда я распечатываю Путь к файлу myFile из MyBean, это:

c:\\apache\bin\WEB-INF\classes\myFile.foo

Так что не используется относительный путь развертывания.

Я что-то не так делаю?

Ответы [ 2 ]

1 голос
/ 11 декабря 2011

Попробуйте:

 <value>classpath:WEB-INF/classes/myFile.foo</value> 

или

 <value>classpath:myFile.foo</value> 
0 голосов
/ 11 декабря 2011

Использование:

<property name="myFile" value="/myFile.foo"/>

и читать, используя:

InputStream is = getClass().getResourceAsStream(myFile);

myFile является String.

Другой подход - сохранить файл в том же каталоге, что и пакет MyBean (/WEB-INF/classes/path/to/myFile.foo), и прочитать его следующим образом:

<property name="myFile" value="myFile.foo"/>

Обратите внимание, что нет начального / - путь относительно текущего класса (getClass() вызов).

...