2009-11-20 5 views
5

Как узнать, какую ссылку на файл использовать для получения файла из моей WAR.Как получить доступ к текстовому файлу из моей войны

Структура WAR является:

WAR
ЦСИ
- модель
- веб
сборки
    WebContent
        META-INF
        WEB-INF
            LIB

JSPs находятся под WebContent, я поместил файл config.txt в папке WebContent и попытался добраться до него с

BufferedReader in = new BufferedReader (новый FileReader («WebContent/config.txt»));

Но это не сработает. Кто-нибудь знает, какую ссылку мне нужно передать или как я могу это понять.

ответ

1

Один из способов сделать это - это оговорка, которую я объясню ниже. Вы должны сделать что-то вроде этого:

// In a Servlet 
ServletContext sc = getServletContext(); 
BufferedReader in = 
    new BufferedReader(new FileReader(sc.getRealPath("WebContent/config.txt")); 

Это предполагает, что ваш контейнер сервлета сконфигурирован для расширения военных файлов в их соответствующую структуру каталогов.

+0

Да, я использую Tomcat, и он делает расширение – Ankur

+0

Но по какой-то причине это не сработало – Ankur

+0

Посмотрите на комментарий ChssPly76 к ответу Асафа. Он прав. –

2

Я думаю, что просто удалите WebContent с пути, читая файл, и он должен помочь. ..

-1

Самый безопасный способ доступа к этому файлу должен быть чем-то вроде этого:

вход InputStream = GetClass() getClassLoader() getResourceAsStream ("ваш/путь/ввода/здесь");

+1

, который работает для ресурсов в classpath, но webcontent нет. – Yevgeniy

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