Нахождение URL приложения только с ServletContext

Вам не нужно указывать имя в теге формы, удалите класс:

49
задан Josh Hinman 23 March 2009 в 14:29
поделиться

3 ответа

Не рекомендуется динамично подготовить URL во время выполнения, особенно на основе ServletRequest. Это, прежде всего, потому что Вы понятия не имеете о URL, что пользователи использовали бы для доступа к приложению - сервер приложений мог быть позади веб-сервера, брандмауэра или подсистемы балансировки нагрузки. Для хранения этого коротким нельзя предсказать топологии сети.

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

Править: Моя последняя точка повторяет то, о чем говорил Tony.

32
ответ дан Vineet Reynolds 7 November 2019 в 11:55
поделиться

Почему просто не имеют веб-страницу установки, которая подходит в первый раз, когда приложение запущено, если конфигурационный файл не существует (в папке WEB-INF, например. Используя ServletContext, можно назвать getRealPath и получить реальный путь Файла и видеть, существует ли он (). Если это делает, перенаправляет к начальной странице приложения, если это не делает, открывает администраторскую страницу).

Лучшее Вы, которых бегунок делает с ServletContext, читаетесь некоторые настройки из web.xml, и получите путь контекста, только HttpRequest может дать Вам URL FQ.

9
ответ дан Tony BenBrahim 7 November 2019 в 11:55
поделиться

Проверяли ли вы с помощью отладчика, не является ли ваш ServletContext экземпляром HttpServletContext? Если да, примените его и получите информацию оттуда.

0
ответ дан 7 November 2019 в 11:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: