powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Путь к WEB серверу. Как узнать?
55 сообщений из 55, показаны все 3 страниц
Путь к WEB серверу. Как узнать?
    #34717449
Мишаааааааааааааааа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет.

Как получиит путь к web серверу?
У меня в проекте есть папка в ней три xml файла.
Когда задеплоится проект то эта папка и файлы на серваке. Но я не могу их читать потому что не знаю путь к серверу а он может меняться.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34717462
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
официальный язык форума - русский.

по сабжу - можно хранить путь в конфигурационных файлах (или БД)
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34717521
Мишаааааааааааааааа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Deady
по сабжу - можно хранить путь в конфигурационных файлах (или БД)
Posted via ActualForum NNTP Server 1.4

Спасибо, но нужно определять динамически.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34717560
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Спасибо, но нужно определять динамически.

а смысл извращаться?
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34717579
Мишаааааааааааааааа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Deady
> Спасибо, но нужно определять динамически.

а смысл извращаться?
Posted via ActualForum NNTP Server 1.4

От меня требуют! Что я могу сделать. :((
Видать не хотят привязываться к постоянному пути. Сервер можно поставить тогда куда угодно.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34717580
Фотография Хрюхрюшкин.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все ридеры конфигов Java умеют обходиться без абсолютных путей.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34717585
Фотография Хрюхрюшкин.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Узнать, откуда был запущен класс, можно с помощью
Код: plaintext
1.
 this .getClass().getProtectionDomain().getCodeSource().getLocation()
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34717672
Мишаааааааааааааааа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это всё замечательно, только я не могу понять почему я получаю путь сырков?
Мне нужен путь к сервеу.

Получил:
C:\Projects\....

Нужно:
С:\WEBServer\......
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34717690
Фотография Хрюхрюшкин.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МишааааааааааааааааЭто всё замечательно, только я не могу понять почему я получаю путь сырков?
Мне нужен путь к сервеу.

Получил:
C:\Projects\....

Нужно:
С:\WEBServer\......
Только не говори мне, что ты запускаешься из IDE, а не из задеплоенного в веб-сервер приложения. Меня забанят за матерные выражения тогда.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34717698
no13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МишааааааааааааааааЭто всё замечательно, только я не могу понять почему я получаю путь сырков?
Мне нужен путь к сервеу.

Получил:
C:\Projects\....

Нужно:
С:\WEBServer\......
А зачем вам путь к веб-серверу? Я ещё могу понять потребность в знании местарасположения веб-приложения. Но сервер.... Если вам так нужен путь к веб-серверу, внесите его в конфиги, а их формируйте на сервере скриптом, умеющим определять расположение вашего абстрактного веб-сервера.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34717710
Мишаааааааааааааааа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хрюхрюшкин. МишааааааааааааааааЭто всё замечательно, только я не могу понять почему я получаю путь сырков?
Мне нужен путь к сервеу.

Получил:
C:\Projects\....

Нужно:
С:\WEBServer\......
Только не говори мне, что ты запускаешься из IDE, а не из задеплоенного в веб-сервер приложения. Меня забанят за матерные выражения тогда.

мля, я взял war открыл терминал GlassFish'a задеплоил проект из war'a и запустил.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34717737
Мишаааааааааааааааа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
no13 МишааааааааааааааааЭто всё замечательно, только я не могу понять почему я получаю путь сырков?
Мне нужен путь к сервеу.

Получил:
C:\Projects\....

Нужно:
С:\WEBServer\......
А зачем вам путь к веб-серверу? Я ещё могу понять потребность в знании местарасположения веб-приложения.

Прикол в том что когда деплоишь war файл то GlassFish всё у себя размещает.
Вот есть вариант:
Код: plaintext
1.
2.
3.
4.
5.
6.
strBufer = ((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getServletContext().getRealPath("Files/" + "strFileName" + ".xml"); 

//или 

ServletContext theApplicationsServletContext = (ServletContext) FacesContext.getCurrentInstance().getExternalContext().getContext();
strBufer = theApplicationsServletContext.getRealPath("Files/" + "strFileName" + ".xml"); 
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34717760
no13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мишаааааааааааааааа
Прикол в том что когда деплоишь war файл то GlassFish всё у себя размещает.

Это не расположение веб-сервера, а приложения. Я б этом говорил.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34717814
Мишаааааааааааааааа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
no13 Мишаааааааааааааааа
Прикол в том что когда деплоишь war файл то GlassFish всё у себя размещает.

Это не расположение веб-сервера, а приложения. Я б этом говорил.

Тогда пардон.
Всё равно я не понимаю почему он мне показывает тот путь где лежат исходники.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34717864
no13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мишаааааааааааааааа no13 Мишаааааааааааааааа
Прикол в том что когда деплоишь war файл то GlassFish всё у себя размещает.

Это не расположение веб-сервера, а приложения. Я б этом говорил.

Тогда пардон.
Всё равно я не понимаю почему он мне показывает тот путь где лежат исходники.
RealPath показывает путь к файлам приложения. Какие вообще могут быть исходники в веб-приложении??? RealPath("/") покажет вам путь к корню приложения, RealPath("Files") - в папке Files внутри вашего приложения (если это возможно).
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34718645
max_from_sumy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
getRealPath() вообще null может возвращать. Так что это вообще не решение.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34718662
Господа, я очень мало ориентируюсь в java программировании, но хочу прояснить несколько моментов не зависящих от java и программирования.

авторКак получиит путь к web серверу?
А ничего что обычно к WEB-СЕРВЕРУ по доменному имени или ip-адресу обращаются?

авторУ меня в проекте есть папка в ней три xml файла.
Когда задеплоится проект то эта папка и файлы на серваке. Но я не могу их читать потому что не знаю путь к серверу а он может меняться.
Вы что, к WEB-СЕРВЕРУ хотите по smb протоколу обращаться?
А ничего что сервер может быть не под виндовс и не поддерживать smb чисто принципиально?

Из всего выше сказанного, по какому пути и куда вы хотите "попасть"?
Редактировать файл на диске сервера?
А сервер об этом знает(будет знать)?

А для того чтобы он об этом знал вам самому надо постараться, и для реализации редактирования файлов на WEB-СЕРВЕРЕ абсолютно незачем знать "полный путь"(что за путь?).
Посмотрите любую CMS, на языке который вы лучше знаете(java не панацея, а пути решения почти не отличаются).
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34718702
Роман В
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
max_from_sumygetRealPath() вообще null может возвращать. Так что это вообще не решение.
мне getRealPath() очень даже помог недавно про то же самое спрашивал
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34718910
no13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вопросы-вопросы....Господа, я очень мало ориентируюсь в java программировании, но хочу прояснить несколько моментов не зависящих от java и программирования.


Иногда лучше жевать ;)
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34719227
max_from_sumy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Роман В max_from_sumygetRealPath() вообще null может возвращать. Так что это вообще не решение.
мне getRealPath() очень даже помог недавно про то же самое спрашивал

Баяны рвать не буду, уже только ленивый не знает, что вытягивать с помощью getRealPath ресурсы (как видимо хочет автор топика) вообще неправильно

1

2
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34719554
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
max_from_sumy
уже только ленивый не знает, что вытягивать с помощью getRealPath ресурсы (как видимо хочет автор топика) вообще неправильно

1

2
- в приведенных топиках никто не сумел ответить на вопрос как писать в файл, не используя getRealPath()

- getRealPath нормально работает если приложение при деплое распаковывается из WAR-архива, что зависит от настроек контейнера сервлетов (например в Tomcat настройка контекста unpackWAR )
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34719595
Kachalov max_from_sumy
уже только ленивый не знает, что вытягивать с помощью getRealPath ресурсы (как видимо хочет автор топика) вообще неправильно

1

2
- в приведенных топиках никто не сумел ответить на вопрос как писать в файл, не используя getRealPath()

- getRealPath нормально работает если приложение при деплое распаковывается из WAR-архива, что зависит от настроек контейнера сервлетов (например в Tomcat настройка контекста unpackWAR )
товарищ Blazkowicz подсказывал решение как получить путь. А вот как писать файл по известному пути - это в мануал.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34719603
no13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Kachalov
- в приведенных топиках никто не сумел ответить на вопрос как писать в файл, не используя getRealPath()
А зачем? Почему надо писать именно туда?
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34719993
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ненавижу хибернейт
товарищ Blazkowicz подсказывал решение как получить путь.
- ну и где? Еще раз внимательно перечитал оба топика и нашел там единственный кусок кода:
Код: plaintext
getServletContext().getResourceAsStream("/WEB-INF/resources/input.xml");
- но это не получение пути к файлу, а получение потока чтения, связаного с файлом.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34720035
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
no13 Kachalov
- в приведенных топиках никто не сумел ответить на вопрос как писать в файл, не используя getRealPath()
А зачем? Почему надо писать именно туда?
- когда не знаешь как, спроси зачем :)

- предположим хочу что-то (что угодно, например сериализованые объекты) сохранять в папке WEB-INF. Вопрос: как получить физический путь к этой папке не используя getRealPath()? Я понимаю что вопрос почти философский, т. е. в соответствии с идеологией JavaEE наверное надо сделать ресурс, зарегистрировать его в JNDI и уже после этого использовать в приложении, но это в больших проектах, а если надо сделать небольшой сайт на JSP? Тоже париться с JNDI или "хранить все в базе" (еще один популярный совет)? Есть определенный класс задач (с определенными ограничениями типа распаковки WAR) где getRealPath() (если он такой "вообще неправильный" почему он не deprecated?) вполне имеет право на существование.

- собственно я, в отличие от некоторых других участников беседы, не говорю что getRealPath() "вообще правильный" метод, но если говоришь "А", скажи и "Б", т. е. расскажите как "правильно" получить абсолютный путь к файлу из web-приложения.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34720065
Kachalov ненавижу хибернейт
товарищ Blazkowicz подсказывал решение как получить путь.
- ну и где? Еще раз внимательно перечитал оба топика и нашел там единственный кусок кода:
Код: plaintext
getServletContext().getResourceAsStream("/WEB-INF/resources/input.xml");
- но это не получение пути к файлу, а получение потока чтения, связаного с файлом.
тогда вот так:
getServlet().getServletContext().getResource("/");
а getRealPath(), в общем случае, работать не будет.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34720220
no13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Kachalov no13[quot Kachalov]
- в приведенных топиках никто не сумел ответить на вопрос как писать в файл, не используя getRealPath()
А зачем? Почему надо писать именно туда?
- когда не знаешь как, спроси зачем :)[/quote]
Можно придумать задачу, которой нужен указатель структуру в памяти, и засіпать форумы всех вопросами "как получить указатель в java". ;)
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34720445
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
no13
Можно придумать задачу, которой нужен указатель структуру в памяти, и засіпать форумы всех вопросами "как получить указатель в java". ;)
- когда не знаешь как, переведи разговор на другую тему :)
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34720466
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ненавижу хибернейт
тогда вот так:
getServlet().getServletContext().getResource("/");
а getRealPath(), в общем случае, работать не будет.
- надеюсь Вы сами пробовали такой вариант. У меня он дает результат:
jndi:/localhost/testapp/ (testapp - имя тестового web-приложения).

При попытке открыть URL (типа: jndi:/localhost/testapp/WEB-INF/test.txt) на запись получаем:
java.net.UnknownServiceException: protocol doesn't support output
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34720564
no13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Kachalov no13
Можно придумать задачу, которой нужен указатель структуру в памяти, и засіпать форумы всех вопросами "как получить указатель в java". ;)
- когда не знаешь как, переведи разговор на другую тему :)
когда лень делать как надо, можно доказывать что твой путь самый правильный, а все остальные неправы
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34720614
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KachalovВопрос: как получить физический путь к этой папке не используя getRealPath()?

no13когда лень делать как надо, можно доказывать что твой путь самый правильный, а все остальные неправы

- ну скажите дураку как надо осуществлять запись в файл из web-приложения не используя getRealPath(), а то Вы уже третий пост в этой теме пишите, а еще ни одной строчки кода.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34720782
Фотография riman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kachalov ненавижу хибернейт
тогда вот так:
getServlet().getServletContext().getResource("/");
а getRealPath(), в общем случае, работать не будет.
- надеюсь Вы сами пробовали такой вариант. У меня он дает результат:
jndi:/localhost/testapp/ (testapp - имя тестового web-приложения).

При попытке открыть URL (типа: jndi:/localhost/testapp/WEB-INF/test.txt) на запись получаем:
java.net.UnknownServiceException: protocol doesn't support output
Пробовал конечно.
А что выдаст this.getClass().getResource("/"); ?
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34720857
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rimanА что выдаст this.getClass().getResource("/"); ?
file:/D:/server/tomcat/work/Catalina/localhost/testapp/WEB-INF/classes/
- но это путь к временной папке куда распакуется (Tomcat все же распакует архив) приложение
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34720874
Фотография riman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kachalov rimanА что выдаст this.getClass().getResource("/"); ?
file:/D:/server/tomcat/work/Catalina/localhost/testapp/WEB-INF/classes/
- но это путь к временной папке куда распакуется (Tomcat все же распакует архив) приложение
well...
А разве можно писать файлы внутрь war'a?
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34720891
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
riman Kachalov rimanА что выдаст this.getClass().getResource("/"); ?
file:/D:/server/tomcat/work/Catalina/localhost/testapp/WEB-INF/classes/
- но это путь к временной папке куда распакуется (Tomcat все же распакует архив) приложение
well...
А разве можно писать файлы внутрь war'a?
- практически, ни разу не слышал :)

- однако все равно вопрос открыт, при андеплое приложения временная папка куда приложение теоретически может писать данные (еще неизвестно какие настройки у SecurityManager-а) пропадет вместе со всеми данными, так что либо приложение надо хранить в распакованном виде и тогда работает getRealPath(), либо доступ к файловому ресурсу надо осуществлять предварительно зарегистрировав его в JNDI и располагая его в отдельной папке физически не связанной с приложением.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34720892
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вообще писать внутри томката имхо бред собачий. должнен быть отдельный
ресурс для этого, где-нить в /var/www/tomcat/app/
а доступ по http до этих файлов решается на раз два три. самое простое -
символической ссылкой. посложнее - навесить сверху апач.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34720897
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Deadyвообще писать внутри томката имхо бред собачий.
- совершенно с Вами согласен

Deadyдолжнен быть отдельный
ресурс для этого, где-нить в /var/www/tomcat/app/

- в том то и вопрос, где? и как туда добраться для записи?
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34720900
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Kachalov" <nospam@sql.ru>;

- в том то и вопрос, где? и как туда добраться для записи?


где - в любом месте на сервере. как добраться - или в конфе путь хранить (web.xml), или в БД, или в JNDI.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34720946
Фотография riman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
всё! ура! все щасливы! :)
запись файлов - на специально отведенные ресурсы
конфиги - в пропертях
пропертя - в jndi или в текстовых файлах внутри аппликации
доступ к пропертям - через getResource().

хлопушки, шарики :)
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34720954
VoDA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kachalov- надеюсь Вы сами пробовали такой вариант. У меня он дает результат:
jndi:/localhost/testapp/ (testapp - имя тестового web-приложения).

При попытке открыть URL (типа: jndi:/localhost/testapp/WEB-INF/test.txt) на запись получаем:
java.net.UnknownServiceException: protocol doesn't support output
Привет.

Первое: в джаве нет "директории откуда запущено приложение", ибо кроссплатформенность и т.п. (приложение не знает на какой платформе работает). Есть только относительные... остальное своеобразные хаки системы.
Второе: web-приложение не должно иметь доступа на запись... особенно в директорию web-server'a.
Третье: вы уверены, что нужно писать в нечто найденное по jndi ?

Итог: если нужно что-то записывать на сервере - ТОЛЬКО в СУБД.

PS опиши задачу конкретнее - может и получишь внятный ответ.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34720955
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Deady
где - в любом месте на сервере. как добраться - или в конфе путь хранить (web.xml), или в БД, или в JNDI.
- мне это понятно. Обсужадемая проблема заключается в том что хочется создать приложение которое легко переносится с сервера на сервер, самостоятельно определяя физический путь к домашней директории, а не прописывая его каждый раз ручками в конфигах. Для определения пути можно использовать getRealPath(), который работает "почти" всегда (за исключением случаев, когда приложение хранится в виде WAR-архива), однако некоторые участники обсуждения считают этот метод не кошерным из-за того самого "почти".

- как решается проблема с точки зрения "нераспаковщиков" понятно, собственно очевидны два варианта решения:

1) зарегистрировать папку как ресурс в JNDI или LDAP и переложить проблему на того кто будет развертывать приложение

2) хранить все изменяемые ресурсы в БД

Оба решения, IMHO, имеют недостатки для определенного круга задач. В первом случае для небольших приложений возникают неоправданно сложные настройки. Во втором случае появляется необходимость пропускать все данные через БД и сервлет, что не здорово при показе картинок на ресурсе с большой посещаемостью.

Мне кажется что при условии распаковки приложения getRealPath() это нормальный метод и предавать его анафеме не стоит, так как он позволяет просто решить задачу доступа к ресурсу на запись.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34720988
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VoDA
Первое: в джаве нет "директории откуда запущено приложение", ибо кроссплатформенность и т.п. (приложение не знает на какой платформе работает). Есть только относительные... остальное своеобразные хаки системы.
- в web-программировании со времен CGI есть понятие DOCUMENT_ROOT - абсолютный физический путь к домашней директории сайта. Если разработчики контейнеров сервлетов (и Sun как создатель спецификации) допускают невозможность получить физический путь к домашней директории сайта (собственно уничтожают такое понятие), то они дают лишний аргумент сторонникам разработки web-приложений на других языках.

VoDA
Второе: web-приложение не должно иметь доступа на запись... особенно в директорию web-server'a.
- кто сказал, что приложение не должно иметь права на запись? А куда сохранять картинки? В базу? А как поступать с CMS которые генерируют статические HTML страницы? Исключить как класс когда программируешь на Java?

VoDA
Третье: вы уверены, что нужно писать в нечто найденное по jndi ?
- посмотрите топик с начала. Это мне ненавижу хибернейт посоветовал, а писать туда мне лично не удалось.

VoDA
Итог: если нужно что-то записывать на сервере - ТОЛЬКО в СУБД.
- после таких советов, начинаются разговоры о "тормознутости" Java сайтов и необходимости использования отдельного сервера для Java-сайта

VoDAPS опиши задачу конкретнее - может и получишь внятный ответ.
- getRealPath() и требование распаковки приложения при деплое (кстати у Tomcat это свойство по дефолту)
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34722048
skipper13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Kachalov...ну скажите дураку как надо осуществлять запись в файл из web-приложения не используя getRealPath(), а то Вы уже третий пост в этой теме пишите, а еще ни одной строчки кода.
Ответ прост - а не надо туда писать.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34722155
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skipper13 Kachalov...ну скажите дураку как надо осуществлять запись в файл из web-приложения не используя getRealPath(), а то Вы уже третий пост в этой теме пишите, а еще ни одной строчки кода.
Ответ прост - а не надо туда писать.
- еще один любитель писать в базу, больше ничего полезного из Вашего поста извлечь не сумел (извините за скудоумие и неспособность понять эзотерическое знание).

- откуда у жителей Харькова такая уверенность в том как делать "надо", а как "не надо"? Чем подтверждается Ваше утверждение? Какими то разумными доводами или, может быть, большим опытом web-программирования (посмотрел на Ваш сайт ...)? Напишите в компанию Sun и укажите им как "надо", пусть они объявят метод getRealPath() как deprecated :)
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34722765
expp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
букаф что то много...

а нельзя получить полный путь от такого файла: "."

можно скрестить пальцы на что что сервак стартанули из его дом.каталога
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34722823
no13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Kachalov
skipper13
Ответ прост - а не надо туда писать.

- еще один любитель писать в базу, ....
- ....Чем подтверждается Ваше утверждение?


http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/servlet/ServletContext.html#getRealPath(java.lang.String)
RTFMThis method returns null if the servlet container cannot translate the virtual path to a real path for any reason (such as when the content is being made available from a .war archive).

Kachalov Какими то разумными доводами или, может быть, большим опытом web-программирования (посмотрел на Ваш сайт ...)? Напишите в компанию Sun и укажите им как "надо", пусть они объявят метод getRealPath() как deprecated :)
Компания Sun без моей помощи решила, что getRealPath не предоставляет гарантированного пути к файлу. Если вы так уверены в своей правоте, товарищ язва, то берите и пишите, доказывайте что доступ к диску святое право разработчика приложения, а всякие соображения безопасности - детские страхи.

П.С.
Я где-то бил себя в грудь, что я де крутой web-программист, пяткой левой ноги пишу за минуту интернет-магазин? Или вы просто и дальше развиваете свои демагогические способности? Обсуждение "почему нельзя гарантированно писать в файл веб-приложения" сродни обсуждению "почему нельзя получить указатель". ПМСМ. Удачи в борьбе с ветряными мельниками.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34722959
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
no13Удачи в борьбе с ветряными мельниками.
- самокритично
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34724412
Мишаааааааааааааааа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kachalov
Обсужадемая проблема заключается в том что хочется создать приложение которое легко переносится с сервера на сервер, самостоятельно определяя физический путь к домашней директории, а не прописывая его каждый раз ручками в конфигах. Для определения пути можно использовать getRealPath(), который работает "почти" всегда (за исключением случаев, когда приложение хранится в виде WAR-архива), однако некоторые участники обсуждения считают этот метод не кошерным из-за того самого "почти".

Именно это я и преследую. :) Всё должно быть просто.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34724421
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Мишаааааааааааааааа" <nospam@sql.ru>;

Именно это я и преследую. :) Всё должно быть просто.



если для себя - то да. а если на продажу, то лучше усложнить. иначе как вы потом поддержку продавать будете? :))
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34724451
Мишаааааааааааааааа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Deady
"Мишаааааааааааааааа" <nospam@sql.ru>;

Именно это я и преследую. :) Всё должно быть просто.



если для себя - то да. а если на продажу, то лучше усложнить. иначе как вы потом поддержку продавать будете? :))
Posted via ActualForum NNTP Server 1.4

А вчём проблемма? Я добавил в проект xml файл. NB сделал мне war файл.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34724469
Мишаааааааааааааааа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Deady
"Мишаааааааааааааааа" <nospam@sql.ru>;

Именно это я и преследую. :) Всё должно быть просто.



если для себя - то да. а если на продажу, то лучше усложнить. иначе как вы потом поддержку продавать будете? :))
Posted via ActualForum NNTP Server 1.4

А вчём проблемма?
- Я добавил в проект xml файл.
- NB сделал мне war файл.
- Я его задеплоил. Мой файл на успешно распокавался и упал в одну из папок на web сервере.
- я на web странице могу его просматривать

Что ещё нужно? какие проблеммы?
Если дети удалят папку с web сервером то можно повторно задеплоить war файл.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34725130
VoDA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Kachalov
Уже начитается спор: что лучше прямые указатели как в С ИЛИ управляемая память как в Java.
ИМХО для каждой задачи свои языки более предпочтительны.

А так же С & Java языки для разного заточенные.

Если вам нужно работать на Java, то стоит изучить как правильно его использовать. А если нужно сваять сайтик на 5 страниц - PHP вам в руки. Java начнет выигрывать на сложной бизнес-логике или когда количество разработчиков превысит 5-7 или когда ... ;)

МишааааааааааааааааА вчём проблемма?
- Я добавил в проект xml файл.
- NB сделал мне war файл.
- Я его задеплоил. Мой файл на успешно распокавался и упал в одну из папок на web сервере.
- я на web странице могу его просматривать

Что ещё нужно? какие проблеммы?
Если дети удалят папку с web сервером то можно повторно задеплоить war файл.
Проблема: пользователь берет твой файл, кладет томкату, деплоит... и нифига не работает :)
Томкат на Linux а может и на Винде поставляется с включенным профилем безопастности...
После этого тебе нужно написать доку КАК ставить приложение, КАК на различных платформах редактировать файлы ипроизводить их изменения... а веть есть еще уровни доступа у самой ОС

Сравниваем: подключаем встроенную БД (еще одна библиотека) и храним данные в ней.

PS холивары
Java-style VS C-style
SQL query vs fetch/ stored procedures
Хранение картинок в файлах / Хранение в СУБД
оставим на потом - ибо это зависит от ситуации.
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34725144
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VoDA
ИМХО для каждой задачи свои языки более предпочтительны.

Если вам нужно работать на Java, то стоит изучить как правильно его использовать. А если нужно сваять сайтик на 5 страниц - PHP вам в руки. Java начнет выигрывать на сложной бизнес-логике или когда количество разработчиков превысит 5-7 или когда ... ;)

- "не надо делать сложным, то что проще простого" © Nautilus

- не хотел писать, так как по существу вопроса все уже высказались и ничего нового, по моему добавить уже нельзя, но советы типа "стоит изучить как правильно его использовать" просто задолбали, каждый студент сегодня знает как правильно и какие методы не надо использовать. Нельзя ли быть более вежливым к собеседнику? Откуда такая категоричность? Если метод объявлен как deprecated его действительно не стоит использовать, иначе, пожалуйста, не забывайте добавлять "IMHO".
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34725147
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
OFFTOP
VoDA
Проблема: пользователь берет твой файл, кладет томкату, деплоит... и нифига не работает :)
...
Сравниваем: подключаем встроенную БД (еще одна библиотека) и храним данные в ней.

- а настройки соединения к базе Вы где храните и как их устанавливаете при развертывании приложения?

VoDA
Проблема: пользователь берет твой файл, кладет томкату, деплоит... и нифига не работает :)
...
После этого тебе нужно написать доку КАК ставить приложение, КАК на различных платформах редактировать файлы ипроизводить их изменения... а веть есть еще уровни доступа у самой ОС

- видимо что бы не было проблем никто не должен использовать upload файлов (атрибут ENCTYPE="multipart/form-data" требуем запретить!) :)

VoDA
Проблема: пользователь берет твой файл, кладет томкату, деплоит... и нифига не работает :)
...
Tомкат на Linux а может и на Винде поставляется с включенным профилем безопастности...

- 80% популярных web-фреймворков не работает при включенном SecurityManager (как минимум придется давать права на изменение системных переменных JVM, что при наличии нескольких сайтов в общей JVM использующих одинаковые фреймворки приводит к забавным результатам)
...
Рейтинг: 0 / 0
Путь к WEB серверу. Как узнать?
    #34725451
Мишаааааааааааааааа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VoDA
Проблема: пользователь берет твой файл, кладет томкату, деплоит... и нифига не работает :)


Проект заточен под GlassFish и только.
getRealPath() чудесно работает под этим замечательным сервером.
Протестировал под Windows и Linux Fedora 6
То что в нём есть томкату не по силам. :))
...
Рейтинг: 0 / 0
55 сообщений из 55, показаны все 3 страниц
Форумы / Java [игнор отключен] [закрыт для гостей] / Путь к WEB серверу. Как узнать?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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