powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / ServletContext и getRealPath()
8 сообщений из 8, страница 1 из 1
ServletContext и getRealPath()
    #34669969
diablero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Никак home dir получить не могу, все время он null.
В чем может быть ошибка?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
 public   class  MainController  extends  HttpServlet  implements  ServletContextListener {	
     public   void  contextInitialized(ServletContextEvent servletContextEvent) {	
        String homeDir = servletContextEvent.getServletContext().getRealPath("/WEB-INF");	
    }	
     public   void  contextDestroyed(ServletContextEvent servletContextEvent) {	
    }	
....	
}
...
Рейтинг: 0 / 0
ServletContext и getRealPath()
    #34670261
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А почему WEB-INF вдруг стал называтся home dir?
А RTFMчиком занятся? Посмотреть что getRealPath имеет полное право возвращать null.
...
Рейтинг: 0 / 0
ServletContext и getRealPath()
    #34670391
diablero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BlazkowiczА почему WEB-INF вдруг стал называтся home dir?
А RTFMчиком занятся? Посмотреть что getRealPath имеет полное право возвращать null.
Это понятно. Он и так:
Код: plaintext
getRealPath("/");
null возвращает. А мне нужно получить директорию запуска
...
Рейтинг: 0 / 0
ServletContext и getRealPath()
    #34670446
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что токое директория запуска в твоем понимании? Зачем тебе RealPath? Ты собрался сохранять туда файлы? Если да, то как туда будут сохранятся файлы в запакованом приложении? Если тебе только читать, то почему бы не использовать getResourceAsStream, который всегда работает?
...
Рейтинг: 0 / 0
ServletContext и getRealPath()
    #34670542
diablero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я собрался писать туда свой лог
...
Рейтинг: 0 / 0
ServletContext и getRealPath()
    #34670604
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
diableroЯ собрался писать туда свой лог
В J2EE логирование настраивается на уровне сервера приложения. У себя в приложении достаточно использовать log4j или Jakarta Commons Logging. А сервер сам решает куда писать в зависимости от своих настроек.

Есть ещё такие удивительные вещи как Velocity. Они используют System.getProperty("user.dir") в результате чего лог появляется там откуда был запущен сервер приложений. Так вот советую не делать своё приложение очередной штукой с удивительным поведением.
...
Рейтинг: 0 / 0
ServletContext и getRealPath()
    #34671355
diablero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Путь к домашней директории мне необходим чтобы писать лог своего приложения и читать настройки.
BlazkowiczУ себя в приложении достаточно использовать log4j
Я его и использую, и замечательную вещь Velocity.

Приложение имеет свою структуру каталогов, и поэтому путь к домашней директории мне необходим чтобы писать лог своего приложения и читать настройки. Приложение должно быть по минимуму зависеть от настроек сервера, мое ИМХО.
...
Рейтинг: 0 / 0
ServletContext и getRealPath()
    #34671391
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
diableroПуть к домашней директории мне необходим чтобы писать лог своего приложения и читать настройки.
Читать настройки можно через getResourceAsStream(). А на счет писать что хочется куда хочется, так это тебе банально нормальный сервер приложений не разрешит потому что не секурно. Зачем ты так уперся в логирование куда тебе хочется?

diableroПриложение имеет свою структуру каталогов, и поэтому путь к домашней директории мне необходим чтобы писать лог своего приложения и читать настройки. Приложение должно быть по минимуму зависеть от настроек сервера, мое ИМХО.
Ну, как это "по-минимуму". А размер пулов, а порты. а имя контекста... и уже тем более логирование. Если каждое приложение будет, извините, срать что хочет и куда хочет, админы потом не заколебаются по всему жесткому диску искать где этот лог с ошибкой? А уровень логов вы тоже собираетесь в своем приложении настраивать? И плодить террабайты файлов, ни у кого не спросив? Нормальное приложение в режиме логирование Debug на всех уровнях способено создавать по 100 метров логов в минуту.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / ServletContext и getRealPath()
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]