tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Magnus Larsgården <ma...@kbab.net>
Subject Re: Multiple instances of servlets
Date Wed, 14 Jun 2006 21:13:16 GMT
Hi Len!

This is how my two web.xml files look like:

/home/web/tomcat/webapps/ROOT/WEB-INF/web.xml

    <!--  
******************************************************************  -->
    <!--  
******************************************************************  -->
    <servlet>
        <servlet-name>com.mydomain1.bookingManager.BookingManager</servlet-name>
        <servlet-class>com.mydomain1.bookingManager.BookingManager</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>com.mydomain1.bookingManager.BookingManager</servlet-name>
        <url-pattern>/servlet/com.mydomain1.bookingManager.BookingManager</url-pattern>
    </servlet-mapping>


    <!--  
******************************************************************  -->
    <!--  
******************************************************************  -->
    <servlet> -->
      <servlet-name>com.mydomain1.log.Log</servlet-name>
      <servlet-class>com.mydomain1.log.Log</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>com.mydomain1.log.Log</servlet-name>
        <url-pattern>/servlet/com.mydomain1.log.Log</url-pattern>
    </servlet-mapping>

    <!--  
******************************************************************  -->
    <!--  
******************************************************************  -->
    <servlet> -->
      <servlet-name>com.mydomain1.poll.PollMain</servlet-name>
      <servlet-class>com.mydomain1.poll.PollMain</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>com.mydomain1.poll.PollMain</servlet-name>
        <url-pattern>/servlet/com.mydomain1.poll.PollMain</url-pattern>
    </servlet-mapping>

    <!--  
******************************************************************  -->
    <!--  
******************************************************************  -->
    <servlet> -->
      <servlet-name>com.mydomain1.discgolf.bookingManager.BookingManager</servlet-name>
      <servlet-class>com.mydomain1.discgolf.bookingManager.BookingManager</servlet-class>
      <load-on-startup>2</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>com.mydomain1.discgolf.bookingManager.BookingManager</servlet-name>
        <url-pattern>/servlet/com.mydomain1.discgolf.bookingManager.BookingManager</url-pattern>
    </servlet-mapping>

    <!--  
******************************************************************  -->
    <!--  
******************************************************************  -->
    <servlet> -->
      <servlet-name>com.mydomain1.discgolf.poll.PollMain</servlet-name>
      <servlet-class>com.mydomain1.discgolf.poll.PollMain</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>com.mydomain1.discgolf.poll.PollMain</servlet-name>
        <url-pattern>/servlet/com.mydomain1.discgolf.poll.PollMain</url-pattern>
    </servlet-mapping>



/home/web/tomcat/webapps/mydomain2/WEB-INF/web.xml

    <!--  
******************************************************************  -->
    <!--  
******************************************************************  -->
    <servlet>
        <servlet-name>com.mydomain2.bookingManager.BookingManager</servlet-name>
        <servlet-class>com.mydomain2.bookingManager.BookingManager</servlet-class>
        <load-on-startup>1</load-on-startup>
        <!-- <load-on-startup>1</load-on-startup> -->
    </servlet>
    <servlet-mapping>
        <servlet-name>com.mydomain2.bookingManager.BookingManager</servlet-name>
        <url-pattern>/servlet/com.mydomain2.bookingManager.BookingManager</url-pattern>
    </servlet-mapping>



As I mentioned earlier it is mydomain2 that get four instances of the 
"BookingManager" servlet.

Comments?

Thanks
/Magnus







----- Original Message ----- 
From: "Len Popp" <len.popp@gmail.com>
To: "Tomcat Users List" <users@tomcat.apache.org>
Sent: Wednesday, June 14, 2006 4:44 PM
Subject: Re: Multiple instances of servlets


How many web.xml files do you have, and how many <servlet>
declarations are there in those files? Each one of those is a
different servlet (even if some of them happen to be implemented by
similar Java classes). Normally, Tomcat will create one instance of
each of those servlets (or one per JVM in a distributed application).
Things are different if you use the single-thread model, but that's
not recommended.

See the servlet spec for the official details.
-- 
Len

On 6/14/06, Magnus Larsgården <mason@kbab.net> wrote:
> Hi all,
>
> Is Tomcat supposed to create multiple instances of my servlet at startup? 
> Or
> is it a bug?
>
> Background:
> ========
> I have two different domains connected to my Tomcat server (version 
> 5.5.17):
> http://mydomain1.host.com  and
> http://mydomain2.host.com
>
> "mydomain1" is directed to /home/web/tomcat/webapps/ROOT/
> and "mydomain2" is directed to /home/web/tomcat/webapps/mydomain2/
>
> Both domains use a copy of the same servlet except that they belong to
> different packages. Ex:
> The .java files under mydomain1 belong to package
> "com.mydomain1.bookingManager"  and are located under
> /home/web/tomcat/webapps/ROOT/WEB-INF/classes/com/mydomain1/bookingManager/
>
> The .java files under mydomain2 belong to package
> "com.mydomain2.bookingManager" and are located under
> /home/web/tomcat/webapps/mydomain2/WEB-INF/classes/com/mydomain2/bookingManager/
>
> Problem:
> ======
> When Tomcat starts it creates only ONE instance of the 
> "mydomain1" -servlet,
> and FOUR instances of the "mydomain2" servlet.
> I would really like to only have ONE instance of each servlet. How can I
> achieve this?
>
> I have searched Google for answers but only found contradicting 
> statements.
> Some say that Tomcat creates one, and only one instance of each servlet.
> Other say the opposite.
>
>
> All help is appreciated!
>
> Thanks in advance
> BR/Magnus
>
>
>
>
>
>
>
> ---------------------------------------------------------------------
> 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
>
>

---------------------------------------------------------------------
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 


---------------------------------------------------------------------
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