![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
Nobody |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 838 Регистрация: 25.8.2003 Где: Россия, Москва Репутация: 1 Всего: 16 |
Итак, допустим, у нас есть веб-аппликейшн. Допустим, он довольно сложный, работает с базой данных, с EJB и хрен знает с чем ещё. Итак, начинаем мы его деплоить. Разворачивается war-файл, в ServletContextListener'е вызывается метод contextInitialized... И тут во время его выполнения - опа! - из-за какой-то ошибки (например, отсутствует нужный ей конфиг-файл) оно не может задеплоиться. Внимание, вопрос =) Может ли каким-либо образом веб-аппликейшн сообщить контейнеру о том, что оно не смогло задеплоиться и его нужно убрать из памяти?
-------------------- |
|||
|
||||
Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 13 Всего: 172 |
По-моему, контейнер сам его из памяти уберет.
-------------------- |
|||
|
||||
Nobody |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 838 Регистрация: 25.8.2003 Где: Россия, Москва Репутация: 1 Всего: 16 |
А как контейнер узнает о том, что это надо сделать? Метод contextInitialized НЕ бросает эксепшены. И, похоже, зря.
-------------------- |
|||
|
||||
Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 13 Всего: 172 |
Nо если отсутствует конфиг файл, то контейнер об этом узнает, так ведь?
-------------------- |
|||
|
||||
Nobody |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 838 Регистрация: 25.8.2003 Где: Россия, Москва Репутация: 1 Всего: 16 |
Domestic Cat
Nак, проблемы взаимопонимания =) Я не про деплоймент дескриптор. Просто, приложения чего-то для счастья не хватает, чтобы запуститься, и оно хочет закрыться. Как оно может сказать контейнеру, что его не надо деплоить дальше, т.к. работать оно всё-равно не сможет, только юзверям маловразумительные ошибки показывать будет? -------------------- |
|||
|
||||
Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 13 Всего: 172 |
Бросить иксепшн, и не ловить его
![]() -------------------- |
|||
|
||||
Nobody |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 838 Регистрация: 25.8.2003 Где: Россия, Москва Репутация: 1 Всего: 16 |
Domestic Cat
Какой и где? И в какой документации написано, как на это отреагирует контейнер? Добавлено @ 01:55 Из спецификации сервлетов:
Да, ура, но что если у приложения НЕ получилось подконнектиться к БД? Понятное дело, работать оно не может. Но сообщить об этом контейнеру похоже тоже не может. В итоге контейнер будет думать, что всё прекрасно работает, а юзерам будут валить ошибки одна за одной. -------------------- |
|||
|
||||
Domestic Cat |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 13 Всего: 172 |
Параграф SRV.2.3.2.1 спецификации (2.4)
Зачем ошибки? Сделай хендлер для этого случая и показывай юзерам "База данных временно недоступна". это лучше, чем 404. -------------------- |
||||
|
|||||
Nobody |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 838 Регистрация: 25.8.2003 Где: Россия, Москва Репутация: 1 Всего: 16 |
Domestic Cat
SRV.2.3.2.1 про конкретный сервлет. А хотелось бы про приложение в целом. -------------------- |
|||
|
||||
Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 13 Всего: 172 |
Вообще-то весьма странная ситуация. Если деплоишь аппликейшн, то для усеров, так ведь?
Тогда лучше все-таки показывать им че-то, хотя бы тo, что бд нe работаеt. А контейнер все равно над приложениeм напрягаться нe будет, может и выгрузит' из памяти, если надo, саm. -------------------- |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |