![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
Kirkh |
|
|||
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 6.3.2008 Репутация: нет Всего: нет |
Доброе время суток.
Делаю простенькое web-приложение, для того чтобы познакомиться с Spring MVC. В классе одного из контроллеров мне нужно открыть файл all.xml. Положил его в корень проекта, т.е. на одном уровне с директорией WEB-INF. Но столкнулся с проблемой как получить к нему доступ. Если обращаться по абсолютному пути то все хорошо все получается если просто File("all.xml") или File("/all.xml") то выпадает java.lang.NullPointerException. Вот мой класс:
Как быть?.. Подскажите пожалуйста. |
|||
|
||||
SlavaSemushin |
|
|||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 13.4.2010 Где: Новосибирск Репутация: 1 Всего: 1 |
Я бы попробовал new File(request.getContextPath() + "/all.xml")
|
|||
|
||||
Kirkh |
|
||||
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 6.3.2008 Репутация: нет Всего: нет |
Я бы попробовал new File(request.getContextPath() + "/all.xml") - нет тоже не получается...
В ходе очередных экспериментов обнаружил что к относительному пути указанному как параметр конструктора File(), если путь начинается не с "/", т.е. например так:
добавляется контекст сервера т.е. /home/myName/programs and scripts/apache-tomcat-6.0.29/... дальше немного еще проб и в итоге получилось все вот так:
Всем Спасибо! |
||||
|
|||||
Kirkh |
|
|||
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 6.3.2008 Репутация: нет Всего: нет |
И все таки проблема осталась.
Если делать как посоветовал SlavaSemushin т.е.
то приложение пытается открыть файл /springII/all.xml, которого понятное дело нет. Пробовал удалить первый символ "/" чтоб Linux не воспринимал этот путь абсолютным, тогда добавляется контекст сервера и естественно файла /home/myName/programs and scripts/apache-tomcat-6.0.29/springII/all.xml тоже нет. Из добавления контекста сделал вывод и собрал строку как описывал выше... но злая система Виндовс отказывается добавлять контекст сервера... и опять все не работает... т.е. на моей Ubuntu все ок, в винде java.io.FileNotFoundException... Помогайте о гуру ![]() |
|||
|
||||
Kirkh |
|
|||
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 6.3.2008 Репутация: нет Всего: нет |
Придумал способ как сделать работающую версию для томката на любой операционке
но.. это в принципе тоже костыль... Советы господа... |
|||
|
||||
Skipy |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 487 Регистрация: 24.8.2006 Где: Москва, Россия Репутация: 2 Всего: 16 |
Господи, посоветуй страждущим прочитать API!
Это сообщение отредактировал(а) Skipy - 23.9.2010, 15:38 |
||||
|
|||||
Kirkh |
|
|||
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 6.3.2008 Репутация: нет Всего: нет |
Строго Вы... Читал. И даже решение нашел, именно то что вы посоветовали. Отписаться на форуме не успел. Skipy Спасибо. А в API не всегда сразу и и понятно с какой стороны читать:(. По крайней мере начинающим "читателям". |
|||
|
||||
Skipy |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 487 Регистрация: 24.8.2006 Где: Москва, Россия Репутация: 2 Всего: 16 |
Вы бы знали, насколько было бы меньше вопросов, если бы этим советом пользовались все...
И замечательно! А сколько дополнительно полезного узнали!
Отталкиваясь от тех объектов, которые у Вас есть. HttpServletRequest/HttpServletResponse. Потом дойдете до сессии. Потом - до контекста сервлета. Заодно узнаете, что еще умеет сессия, что контекст. И это самое ценное, потому как вот эти дополнительные знания незаметно накапливаются. И в конце концов вместо того, чтобы лезть в API, Вы то, что нужно, просто вспомните. |
||||||
|
|||||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |