Загрузка контекста сервлета дважды с помощью tomcat - PullRequest
2 голосов
/ 21 октября 2011

Когда я указал несколько тегов хоста в conf/server.xml, контекст сервлета загружается дважды.Это spring веб-приложение на основе.Я расширил пружину ContextLoader и настроил ее.

Мой server.xml (tomcat 7.0.22)

                     <Host name="localhost"  appBase="webapps"
                        unpackWARs="true" autoDeploy="true">

                   <Valve className="org.apache.catalina.valves.AccessLogValve"    directory="/mnt/databank/logs/tomcat7"  
                   prefix="localhost_access_log." suffix=".txt"
                   pattern="%h %l %u %t &quot;%r&quot; %s %b" resolveHosts="false"/>

   </Host>

   <Host name="domain.com" appBase="webapps/Domain"
                        unpackWARs="true" autoDeploy="true"
                        >
                        <Context path="" docBase="."/>
          <Valve className="org.apache.catalina.valves.AccessLogValve" directory="/mnt/databank/logs/tomcat7"  
                   prefix="localhost_access_log." suffix=".txt"
                   pattern="%h %l %u %t &quot;%r&quot; %s %b" resolveHosts="false"/>
           <Context docBase="/mnt/databank/posters" path="/Domain/posters"/>
           <Context docBase="/mnt/databank/advertisement" path="/Domain/advertisement"/>
           <Context docBase="/mnt/databank/star" path="/Domain/star"/>
   </Host>

   <Host name="www.domain.com" appBase="webapps/Redirecter"
                        unpackWARs="true" autoDeploy="true">

                        <Context path="" docBase="."/>
           <Valve className="org.apache.catalina.valves.AccessLogValve" directory="/mnt/databank/logs/tomcat7"  
           prefix="localhost_access_log." suffix=".txt"
           pattern="%h %l %u %t &quot;%r&quot; %s %b" resolveHosts="false"/>
   </Host>

Я добавил журнал в ContextLoader, который запускается дважды следующим образом,

2011-10-21 12:11:22,933 ERROR [Thread-2] c.i.b.u.DomainUtilInitializer [DomainUtilInitializer.java:38] Init Method Triggered
2011-10-21 12:11:46,621 ERROR [Thread-15] c.i.b.u.DomainUtilInitializer [DomainUtilInitializer.java:38] Init Method Triggered

Буду признателен за любую помощь.

1 Ответ

3 голосов
/ 21 октября 2011

Похоже, что это ожидаемое поведение - вы настроили Tomcat для запуска приложения дважды, по одному для каждого хоста.Что вы ожидаете?Если вы хотите, чтобы запущен один экземпляр веб-приложения, вам не следует настраивать два <host>s примерно так - я полагаю, вы добавили псевдоним имени хоста к одному / по умолчанию <Host>.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...