Hi Len,

The SingleThreadModel Interface is _not_ used in the servlet.

Maybe I should write a bugreport?

Thanks for your help!

BR/Magnus




----- Original Message ----- From: "Len Popp" <[EMAIL PROTECTED]>
To: "Tomcat Users List" <users@tomcat.apache.org>
Sent: Friday, June 16, 2006 6:30 PM
Subject: Re: Multiple instances of servlets


I don't see anything there that would cause the servlet in mydomain2
to be loaded 4 times. The only thing I can think of is that the
servlet might be running in single-thread mode (by implementing the
SingleThreadModel interface).
--
Len

On 6/14/06, Magnus Larsgården <[EMAIL PROTECTED]> wrote:
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" <[EMAIL PROTECTED]>
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 <[EMAIL PROTECTED]> 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: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

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


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



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

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

Reply via email to