tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mark Benussi" <mark_benu...@hotmail.com>
Subject multiple instances of load-on-startup classes
Date Tue, 27 Jun 2006 11:43:35 GMT
We have a webapp running within Tomcat 5.0.28 on Linux.
The message log indicates that any <load-on-startup> classes are loaded 
twice. Also, any singleton objects created by these load-on-startup classes 
are created twice. This has been confirmed by stepping through the code via 
a debugger.

>From what I have gathered from web search it looks like the webapp is being 
loaded twice - each instance of the webapp uses a seperate class-loader 
which accounts for seeing multiple instances of singleton objects.

Can anyone shed any light on what may is going on here. Is the webapp being 
loaded twice? Is there a problem with Tomcat's server.xml?

I have included the application log, server.xml and web.xml below:

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++Application 
Log
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

DEBUG 10:37:29,411 CpmDigester:CpmDigester(...) - Config file name = 
'/usr/local/home/paphdv14/.cpm.xml'
DEBUG 10:37:29,527 CpmDigester:loadResults() - About to parse config file
DEBUG 10:37:29,682 CpmDigester:loadResults() - config file parsed
DEBUG 10:37:30,279 Information on the connection pool 'WEBCP'...
DEBUG 10:37:30,279   Number of active connections = 1
DEBUG 10:37:30,279   Number of idle connections = 0
INFO  10:37:31,369 Loading validation rules file from 
'/WEB-INF/validator-rules.xml'
INFO  10:37:31,375 Loading validation rules file from 
'/WEB-INF/validation-web.xml'
INFO  10:37:31,705 Tiles definition factory loaded for module '/web'.
DEBUG 10:37:31,731 WebLoginInitialiserPlugIn:init() - START
INFO  10:37:31,851 Tiles definition factory loaded for module '/imm'.
INFO  10:37:31,851 Loading validation rules file from 
'/WEB-INF/validator-rules.xml'
INFO  10:37:31,851 Loading validation rules file from 
'/WEB-INF/validation-imm.xml'
INFO  10:37:32,039 WebApplicationInitialisation:init(...) - Web application 
initialisation starting...
INFO  10:37:32,039 WebApplicationInitialisation:init(...) - Initialising 
context parameters.
DEBUG 10:37:32,039 WebApplicationInitialisation:init(...) - param = 
./web/mainPage.do

DEBUG 10:37:33,114 CpmDigester:CpmDigester(...) - Config file name = 
'/usr/local/home/paphdv14/.cpm.xml'
DEBUG 10:37:33,154 CpmDigester:loadResults() - About to parse config file
DEBUG 10:37:33,279 CpmDigester:loadResults() - config file parsed
DEBUG 10:37:33,816 Information on the connection pool 'WEBCP'...
DEBUG 10:37:33,817   Number of active connections = 1
DEBUG 10:37:33,817   Number of idle connections = 0
INFO  10:37:34,473 Loading validation rules file from 
'/WEB-INF/validator-rules.xml'
INFO  10:37:34,475 Loading validation rules file from 
'/WEB-INF/validation-web.xml'
INFO  10:37:34,854 Tiles definition factory loaded for module '/web'.
DEBUG 10:37:34,866 WebLoginInitialiserPlugIn:init() - START
INFO  10:37:34,918 Tiles definition factory loaded for module '/imm'.
INFO  10:37:34,918 Loading validation rules file from 
'/WEB-INF/validator-rules.xml'
INFO  10:37:34,918 Loading validation rules file from 
'/WEB-INF/validation-imm.xml'
INFO  10:37:34,982 WebApplicationInitialisation:init(...) - Web application 
initialisation starting...
INFO  10:37:34,982 WebApplicationInitialisation:init(...) - Initialising 
context parameters.
DEBUG 10:37:34,982 WebApplicationInitialisation:init(...) - param = 
./web/mainPage.do

&#65279;<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
         version="2.4">
<description></description>
<filter>
  <filter-name>SessionFilter</filter-name>
  <filter-class>uk.co.etc.web.session.filter.SessionFilter</filter-class>
</filter>
<filter-mapping>
  <filter-name>SessionFilter</filter-name>
  <url-pattern>*.do</url-pattern>
</filter-mapping>
<filter-mapping>
  <filter-name>SessionFilter</filter-name>
  <url-pattern>*.jsp</url-pattern>
</filter-mapping>
<filter-mapping>
  <filter-name>SessionFilter</filter-name>
  <url-pattern>/servlet/*</url-pattern>
</filter-mapping>
<servlet>
  <servlet-name>web-app-init</servlet-name>
  
<servlet-class>uk.co.etc.web.session.init.WebApplicationInitialisation</servlet-class>
  <init-param>
   <param-name>mainPageUri</param-name>
   <param-value>/web/mainPage.do</param-value>
  </init-param>
...
  <load-on-startup>0</load-on-startup>
</servlet>
<servlet>
  <servlet-name>action</servlet-name>
  <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
  <init-param>
   <param-name>config</param-name>
   <param-value>/WEB-INF/struts-config-main.xml</param-value>
  </init-param>
  <init-param>
   <param-name>config/web</param-name>
   <param-value>/WEB-INF/struts-config-web.xml</param-value>
  </init-param>
  <init-param>
   <param-name>debug</param-name>
   <param-value>3</param-value>
  </init-param>
  <init-param>
   <param-name>detail</param-name>
   <param-value>2</param-value>
  </init-param>
  <load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
  <servlet-name>action</servlet-name>
  <url-pattern>*.do</url-pattern>
</servlet-mapping>
<welcome-file-list>
  <welcome-file>/index.jsp</welcome-file>
</welcome-file-list>


</web-app>

<Server port="12106" shutdown="SHUTDOWN" debug="0">

  <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"
            debug="0"/>
  <Listener 
className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"
            debug="0"/>

  <!-- Define the Tomcat Stand-Alone Service -->
  <Service name="Catalina">

    <!-- Define a non-SSL Coyote HTTP/1.1 Connector on port 8080 -->
    <Connector port="12180"
               maxThreads="100" minSpareThreads="5" maxSpareThreads="10"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               debug="0" connectionTimeout="20000"
               disableUploadTimeout="true" />

    <!-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 -->
    <Connector port="12109"
               enableLookups="false" redirectPort="8443" debug="0"
               protocol="AJP/1.3" />


    <!-- Define the top level container in our container hierarchy -->
    <Engine name="Catalina" defaultHost="paphdv14" debug="0">
      <!-- Global logger unless overridden at lower levels -->
      <Logger className="org.apache.catalina.logger.FileLogger"
              prefix="catalina_log." suffix=".txt"
              timestamp="true"/>
  <Host name="paphdv14" appBase="webapps">
          <Logger className="org.apache.catalina.logger.FileLogger"
                   directory="logs"  prefix="paphdv14." suffix=".log" 
timestamp="true"/>
  </Host>
    </Engine>
  </Service>
</Server>



---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Mime
View raw message