|
|
|
Выполнение init() методов сервлетов и фильтров
|
|||
|---|---|---|---|
|
#18+
Подскажите пожалуйста (или дайте ссылку на доку) порядок вызова init() методов фильтров и сервлетов с параметром <load-on-startup>?</load-on-startup> при запуске tomcat 5.5.* ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2005, 15:49 |
|
||
|
Выполнение init() методов сервлетов и фильтров
|
|||
|---|---|---|---|
|
#18+
1. у фильтров нет такого параметра 2. если лоад он стартап: 2а. конструктор класса 2б. метод init() 3. service()/doGet()/do...() - по запросу клиента ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2005, 15:56 |
|
||
|
Выполнение init() методов сервлетов и фильтров
|
|||
|---|---|---|---|
|
#18+
Прошу прощения за криво поставленный вопрос. интересует 1. выполняется ли метод init() фильтров при запуске самого tomcat-a 2. если 1-ое - таки да, то что выполняется раньше init() фильтров или init() сервлетов у которых есть параметр <load-on-startup> 3. и можно ли как-то изменить порядок P.S Вопрос возник не случайно. есть web приложение, работающее под резином в нем есть сервлет с параметром <load-on-startup> который читает файл с параметрами, на основании которых создает несколько обьектов и помещает их ServletContext, а фильтры в методе init() используют эти объекты в резине все пучком. когда попробывал запустить сие на tomcat-е то у меня возникло ощущение что сперва запускаются методы init() всех фильтров, а потом только сервлета, и как следовало ожидать - ничего не работает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2005, 16:29 |
|
||
|
Выполнение init() методов сервлетов и фильтров
|
|||
|---|---|---|---|
|
#18+
думается мне, что криво это как-то: делать то, что делаешь ты. ничего личного. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2005, 16:30 |
|
||
|
Выполнение init() методов сервлетов и фильтров
|
|||
|---|---|---|---|
|
#18+
А.Грасоff™ JEдумается мне, что криво это как-то: делать то, что делаешь ты. ничего личного. Без проблем. У меня в этом сервлете создается пул коннектов к базе, и объект хранящий параметры/настройки всего приложения, кот. берутся из файлика. И мне хотца что-бы это все инициализировалось при старте сервера Что ты на это посоветуешь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2005, 16:56 |
|
||
|
Выполнение init() методов сервлетов и фильтров
|
|||
|---|---|---|---|
|
#18+
я посоветую пользоваться классами-singleton'ами в таком случае ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2005, 17:03 |
|
||
|
Выполнение init() методов сервлетов и фильтров
|
|||
|---|---|---|---|
|
#18+
А.Грасоff™ JEя посоветую пользоваться классами-singleton'ами в таком случае Спасибо А.Грасоff™ JE, идеей проникся, код перепишу. но все-таки вернусь к вопросу о порядке вызовов методов init() провел небольшой эксперимент и вот мои результаты: resin : [15:44:17.833] http listening to *:8080 [15:44:17.833] ServletServer[] starting [15:44:18.505] Host[] starting [15:44:20.458] Application[http://localhost:8080/resin-doc] starting [15:44:22.004] Application[http://localhost:8080] starting [15:44:22.848] Application[http://localhost:8080/dwarf] starting [15:44:23.129] Controller: init Сервлет Controller - init() [15:44:26.364] hmux listening to localhost:6802 //Сервер стартовал //вызов http://localhost:8080/dwarf/index.jsp Фильтр LoggerFilter extends AbstractFilter - init() Фильтр AbstractFilter - init() [15:51:43.091] Compiling _jsp/_index__jsp.java tomcat: 30.03.2005 16:41:11 org.apache.coyote.http11.Http11Protocol init INFO: Initializing Coyote HTTP/1.1 on http-8080 30.03.2005 16:41:11 org.apache.catalina.startup.Catalina load INFO: Initialization processed in 1171 ms 30.03.2005 16:41:11 org.apache.catalina.core.StandardService start INFO: Starting service Catalina 30.03.2005 16:41:11 org.apache.catalina.core.StandardEngine start INFO: Starting Servlet Engine: Apache Tomcat/5.5.9 30.03.2005 16:41:11 org.apache.catalina.core.StandardHost start INFO: XML validation disabled 30.03.2005 16:41:12 org.apache.catalina.startup.HostConfig deployWAR INFO: Deploying web application archive dwarf.war Фильтр LoggerFilter extends AbstractFilter - init() Фильтр AbstractFilter - init() Сервлет Controller - init() 30.03.2005 16:41:16 org.apache.coyote.http11.Http11Protocol start INFO: Starting Coyote HTTP/1.1 on http-8080 30.03.2005 16:41:16 org.apache.jk.common.ChannelSocket init INFO: JK: ajp13 listening on /0.0.0.0:8009 30.03.2005 16:41:16 org.apache.jk.server.JkMain start INFO: Jk running ID=0 time=0/32 config=null 30.03.2005 16:41:17 org.apache.catalina.storeconfig.StoreLoader load INFO: Find registry server-registry.xml at classpath resource 30.03.2005 16:41:17 org.apache.catalina.startup.Catalina start INFO: Server startup in 5810 ms Как говорится почувствуйте разницу. Вопрос это как-то регламентируется спецификацией servlet 2.3, 2.4. И, интересно, сколько у них еще различий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2005, 17:41 |
|
||
|
Выполнение init() методов сервлетов и фильтров
|
|||
|---|---|---|---|
|
#18+
КНВопрос это как-то регламентируется спецификацией servlet 2.3, 2.4.я не знаю. соответсвтенно - хотелось бы ответ от кого-нить услышать :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2005, 17:51 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=32989487&tid=2152642]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
61ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
| others: | 228ms |
| total: | 387ms |

| 0 / 0 |
