Facing problem when 2 simultaneous requests are sent to tomcat.

"Uttam" <[email protected]> Thu, 5 Jan 2006 17:09:26 +0530
Newsgroups gmane.comp.jakarta.alexandria.devel
Message-ID <003001c611ec$b1e162d0$ae01a8c0@vtswin2k3>
------=_NextPart_000_002C_01C6121A.C87AF9B0
Content-Type: multipart/alternative;
	boundary="----=_NextPart_001_002D_01C6121A.C87AF9B0"


------=_NextPart_001_002D_01C6121A.C87AF9B0
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Hi All,

I am a newbei using the Tomcat server in my application. I am using=20

Apache Tomcat 5.028 server
JDK 1.5 Update 5
JRE 5 Update 6

I have written a simple file test PHP file which does this -=20
As soon it is called, it prints a debug message (Request received =
message) on the IE window.
Sleeps for 5 sec.
After sleep, prints on more debug message on the IE window and quits.

When I call this test PHP file simultaneously from two separate Internet =
Explorer windows, I face this strange problem -=20

The first message (Request received message) will be printed in both the =
windows. Then the second message for both the windows will be printed in =
the last window i.e. which ever page was submitted later.

I am attaching the web.xml and server.xml files along with the mail. =
Somebody please help me...

Thanks in advance.=20

Regards,
Uttam.
------=_NextPart_001_002D_01C6121A.C87AF9B0
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Diso-8859-1">
<META content=3D"MSHTML 6.00.2800.1528" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3DArial size=3D2>Hi All,</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>I am a newbei using the Tomcat server =
in my=20
application. I am using&nbsp;</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>Apache Tomcat 5.028 server</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>JDK 1.5 Update 5</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>JRE 5 Update 6</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>I have written a simple file test PHP =
file which=20
does this - </FONT></DIV>
<DIV><FONT face=3DArial size=3D2>As soon it is called, it prints a debug =
message=20
(Request received message) on the IE window.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>Sleeps for 5 sec.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>After sleep, prints on more debug =
message on the IE=20
window and quits.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>When I call this test PHP =
file&nbsp;simultaneously=20
from two separate Internet Explorer windows, I face this strange problem =
-=20
</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>The first message (Request received =
message) will=20
be printed in both the windows. Then the second message for both the =
windows=20
will be printed in the&nbsp;last </FONT><FONT face=3DArial =
size=3D2>window i.e.=20
which ever page was submitted later.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>I am attaching the web.xml and =
server.xml files=20
along with the mail. Somebody please help me...</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>Thanks in advance. </FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>Regards,</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>Uttam.</FONT></DIV></BODY></HTML>

------=_NextPart_001_002D_01C6121A.C87AF9B0--

------=_NextPart_000_002C_01C6121A.C87AF9B0
Content-Type: text/xml;
	name="server.xml"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
	filename="server.xml"

<!-- Example Server Configuration File -->
<!-- Note that component elements are nested corresponding to their
     parent-child relationships with each other -->

<!-- A "Server" is a singleton element that represents the entire JVM,
     which may contain one or more "Service" instances.  The Server
     listens for a shutdown command on the indicated port.

     Note:  A "Server" is not itself a "Container", so you may not
     define subcomponents such as "Valves" or "Loggers" at this level.
 -->

<Server port=3D"8005" shutdown=3D"SHUTDOWN">

  <!-- Comment these entries out to disable JMX MBeans support used for =
the=20
       administration web application -->
  <Listener className=3D"org.apache.catalina.core.AprLifecycleListener" =
/>
  <Listener =
className=3D"org.apache.catalina.mbeans.ServerLifecycleListener" />
  <Listener =
className=3D"org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"=
 />
  <Listener =
className=3D"org.apache.catalina.storeconfig.StoreConfigLifecycleListener=
"/>

  <!-- Global JNDI resources -->
  <GlobalNamingResources>

    <!-- Test entry for demonstration purposes -->
    <Environment name=3D"simpleValue" type=3D"java.lang.Integer" =
value=3D"30"/>

    <!-- Editable user database that can also be used by
         UserDatabaseRealm to authenticate users -->
    <Resource name=3D"UserDatabase" auth=3D"Container"
              type=3D"org.apache.catalina.UserDatabase"
       description=3D"User database that can be updated and saved"
           =
factory=3D"org.apache.catalina.users.MemoryUserDatabaseFactory"
          pathname=3D"conf/tomcat-users.xml" />

  </GlobalNamingResources>

  <!-- A "Service" is a collection of one or more "Connectors" that =
share
       a single "Container" (and therefore the web applications visible
       within that Container).  Normally, that Container is an "Engine",
       but this is not required.

       Note:  A "Service" is not itself a "Container", so you may not
       define subcomponents such as "Valves" or "Loggers" at this level.
   -->

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

    <!-- A "Connector" represents an endpoint by which requests are =
received
         and responses are returned.  Each Connector passes requests on =
to the
         associated "Container" (normally an Engine) for processing.

         By default, a non-SSL HTTP/1.1 Connector is established on port =
8080.
         You can also enable an SSL HTTP/1.1 Connector on port 8443 by
         following the instructions below and uncommenting the second =
Connector
         entry.  SSL support requires the following steps (see the SSL =
Config
         HOWTO in the Tomcat 5 documentation bundle for more detailed
         instructions):
         * If your JDK version 1.3 or prior, download and install JSSE =
1.0.2 or
           later, and put the JAR files into "$JAVA_HOME/jre/lib/ext".
         * Execute:
             %JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA =
(Windows)
             $JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA  =
(Unix)
           with a password value of "changeit" for both the certificate =
and
           the keystore itself.

         By default, DNS lookups are enabled when a web application =
calls
         request.getRemoteHost().  This can have an adverse impact on
         performance, so you can disable it by setting the
         "enableLookups" attribute to "false".  When DNS lookups are =
disabled,
         request.getRemoteHost() will return the String version of the
         IP address of the remote client.
    -->

    <!-- Define a non-SSL HTTP/1.1 Connector on port 8080 -->
    <Connector
port=3D"10000"               maxHttpHeaderSize=3D"8192"
               maxThreads=3D"150" minSpareThreads=3D"25" =
maxSpareThreads=3D"75"
               enableLookups=3D"false" redirectPort=3D"8443" =
acceptCount=3D"100"
               connectionTimeout=3D"20000" disableUploadTimeout=3D"true" =
/>
    <!-- Note : To disable connection timeouts, set connectionTimeout =
value
     to 0 -->
=09
	<!-- Note : To use gzip compression you could set the following =
properties :
=09
			   compression=3D"on"=20
			   compressionMinSize=3D"2048"=20
			   noCompressionUserAgents=3D"gozilla, traviata"=20
			   compressableMimeType=3D"text/html,text/xml"
	-->

    <!-- Define a SSL HTTP/1.1 Connector on port 8443 -->
    <!--
    <Connector port=3D"8443" maxHttpHeaderSize=3D"8192"
               maxThreads=3D"150" minSpareThreads=3D"25" =
maxSpareThreads=3D"75"
               enableLookups=3D"false" disableUploadTimeout=3D"true"
               acceptCount=3D"100" scheme=3D"https" secure=3D"true"
               clientAuth=3D"false" sslProtocol=3D"TLS" />
    -->

    <!-- Define an AJP 1.3 Connector on port 8009 -->
    <Connector port=3D"8009"=20
               enableLookups=3D"false" redirectPort=3D"8443" =
protocol=3D"AJP/1.3" />

    <!-- Define a Proxied HTTP/1.1 Connector on port 8082 -->
    <!-- See proxy documentation for more information about using this. =
-->
    <!--
    <Connector port=3D"8082"=20
               maxThreads=3D"150" minSpareThreads=3D"25" =
maxSpareThreads=3D"75"
               enableLookups=3D"false" acceptCount=3D"100" =
connectionTimeout=3D"20000"
               proxyPort=3D"80" disableUploadTimeout=3D"true" />
    -->

    <!-- An Engine represents the entry point (within Catalina) that =
processes
         every request.  The Engine implementation for Tomcat stand =
alone
         analyzes the HTTP headers included with the request, and passes =
them
         on to the appropriate Host (virtual host). -->

    <!-- You should set jvmRoute to support load-balancing via AJP ie :
    <Engine name=3D"Standalone" defaultHost=3D"localhost" =
jvmRoute=3D"jvm1">        =20
    -->=20
        =20
    <!-- Define the top level container in our container hierarchy -->
    <Engine name=3D"Catalina" defaultHost=3D"localhost">

      <!-- The request dumper valve dumps useful debugging information =
about
           the request headers and cookies that were received, and the =
response
           headers and cookies that were sent, for all requests received =
by
           this instance of Tomcat.  If you care only about requests to =
a
           particular virtual host, or a particular application, nest =
this
           element inside the corresponding <Host> or <Context> entry =
instead.

           For a similar mechanism that is portable to all Servlet 2.4
           containers, check out the "RequestDumperFilter" Filter in the
           example application (the source for this filter may be found =
in
           "$CATALINA_HOME/webapps/examples/WEB-INF/classes/filters").

           Request dumping is disabled by default.  Uncomment the =
following
           element to enable it. -->
      <!--
      <Valve =
className=3D"org.apache.catalina.valves.RequestDumperValve"/>
      -->

      <!-- Because this Realm is here, an instance will be shared =
globally -->

      <!-- This Realm uses the UserDatabase configured in the global =
JNDI
           resources under the key "UserDatabase".  Any edits
           that are performed against this UserDatabase are immediately
           available for use by the Realm.  -->
      <Realm className=3D"org.apache.catalina.realm.UserDatabaseRealm"
             resourceName=3D"UserDatabase"/>

      <!-- Comment out the old realm but leave here for now in case we
           need to go back quickly -->
      <!--
      <Realm className=3D"org.apache.catalina.realm.MemoryRealm" />
      -->

      <!-- Replace the above Realm with one of the following to get a =
Realm
           stored in a database and accessed via JDBC -->

      <!--
      <Realm  className=3D"org.apache.catalina.realm.JDBCRealm"
             driverName=3D"org.gjt.mm.mysql.Driver"
          connectionURL=3D"jdbc:mysql://localhost/authority"
         connectionName=3D"test" connectionPassword=3D"test"
              userTable=3D"users" userNameCol=3D"user_name" =
userCredCol=3D"user_pass"
          userRoleTable=3D"user_roles" roleNameCol=3D"role_name" />
      -->

      <!--
      <Realm  className=3D"org.apache.catalina.realm.JDBCRealm"
             driverName=3D"oracle.jdbc.driver.OracleDriver"
          connectionURL=3D"jdbc:oracle:thin:@ntserver:1521:ORCL"
         connectionName=3D"scott" connectionPassword=3D"tiger"
              userTable=3D"users" userNameCol=3D"user_name" =
userCredCol=3D"user_pass"
          userRoleTable=3D"user_roles" roleNameCol=3D"role_name" />
      -->

      <!--
      <Realm  className=3D"org.apache.catalina.realm.JDBCRealm"
             driverName=3D"sun.jdbc.odbc.JdbcOdbcDriver"
          connectionURL=3D"jdbc:odbc:CATALINA"
              userTable=3D"users" userNameCol=3D"user_name" =
userCredCol=3D"user_pass"
          userRoleTable=3D"user_roles" roleNameCol=3D"role_name" />
      -->

      <!-- Define the default virtual host
           Note: XML Schema validation will not work with Xerces 2.2.
       -->
      <Host name=3D"localhost" appBase=3D"C:\VTS\Web\"
       unpackWARs=3D"true" autoDeploy=3D"true"
       xmlValidation=3D"false" xmlNamespaceAware=3D"false">

        <!-- Defines a cluster for this node,
             By defining this element, means that every manager will be =
changed.
             So when running a cluster, only make sure that you have =
webapps in there
             that need to be clustered and remove the other ones.
             A cluster has the following parameters:

             className =3D the fully qualified name of the cluster class

             name =3D a descriptive name for your cluster, can be =
anything

             mcastAddr =3D the multicast address, has to be the same for =
all the nodes

             mcastPort =3D the multicast port, has to be the same for =
all the nodes
            =20
             mcastBindAddr =3D bind the multicast socket to a specific =
address
            =20
             mcastTTL =3D the multicast TTL if you want to limit your =
broadcast
            =20
             mcastSoTimeout =3D the multicast readtimeout=20

             mcastFrequency =3D the number of milliseconds in between =
sending a "I'm alive" heartbeat

             mcastDropTime =3D the number a milliseconds before a node =
is considered "dead" if no heartbeat is received

             tcpThreadCount =3D the number of threads to handle incoming =
replication requests, optimal would be the same amount of threads as =
nodes=20

             tcpListenAddress =3D the listen address (bind address) for =
TCP cluster request on this host,=20
                                in case of multiple ethernet cards.
                                auto means that address becomes
                                =
InetAddress.getLocalHost().getHostAddress()

             tcpListenPort =3D the tcp listen port

             tcpSelectorTimeout =3D the timeout (ms) for the =
Selector.select() method in case the OS
                                  has a wakup bug in java.nio. Set to 0 =
for no timeout

             printToScreen =3D true means that managers will also print =
to std.out

             expireSessionsOnShutdown =3D true means that=20

             useDirtyFlag =3D true means that we only replicate a =
session after setAttribute,removeAttribute has been called.
                            false means to replicate the session after =
each request.
                            false means that replication would work for =
the following piece of code: (only for SimpleTcpReplicationManager)
                            <%
                            HashMap map =3D =
(HashMap)session.getAttribute("map");
                            map.put("key","value");
                            %>
             replicationMode =3D can be either 'pooled', 'synchronous' =
or 'asynchronous'.
                               * Pooled means that the replication =
happens using several sockets in a synchronous way. Ie, the data gets =
replicated, then the request return. This is the same as the =
'synchronous' setting except it uses a pool of sockets, hence it is =
multithreaded. This is the fastest and safest configuration. To use =
this, also increase the nr of tcp threads that you have dealing with =
replication.
                               * Synchronous means that the thread that =
executes the request, is also the
                               thread the replicates the data to the =
other nodes, and will not return until all
                               nodes have received the information.
                               * Asynchronous means that there is a =
specific 'sender' thread for each cluster node,
                               so the request thread will queue the =
replication request into a "smart" queue,
                               and then return to the client.
                               The "smart" queue is a queue where when a =
session is added to the queue, and the same session
                               already exists in the queue from a =
previous request, that session will be replaced
                               in the queue instead of replicating two =
requests. This almost never happens, unless there is a=20
                               large network delay.
        -->            =20
        <!--
            When configuring for clustering, you also add in a valve to =
catch all the requests
            coming in, at the end of the request, the session may or may =
not be replicated.
            A session is replicated if and only if all the conditions =
are met:
            1. useDirtyFlag is true or setAttribute or removeAttribute =
has been called AND
            2. a session exists (has been created)
            3. the request is not trapped by the "filter" attribute

            The filter attribute is to filter out requests that could =
not modify the session,
            hence we don't replicate the session after the end of this =
request.
            The filter is negative, ie, anything you put in the filter, =
you mean to filter out,
            ie, no replication will be done on requests that match one =
of the filters.
            The filter attribute is delimited by ;, so you can't escape =
out ; even if you wanted to.

            filter=3D".*\.gif;.*\.js;" means that we will not replicate =
the session after requests with the URI
            ending with .gif and .js are intercepted.
           =20
            The deployer element can be used to deploy apps cluster =
wide.
            Currently the deployment only deploys/undeploys to working =
members in the cluster
            so no WARs are copied upons startup of a broken node.
            The deployer watches a directory (watchDir) for WAR files =
when watchEnabled=3D"true"
            When a new war file is added the war gets deployed to the =
local instance,
            and then deployed to the other instances in the cluster.
            When a war file is deleted from the watchDir the war is =
undeployed locally=20
            and cluster wide
        -->
       =20
        <!--
        <Cluster =
className=3D"org.apache.catalina.cluster.tcp.SimpleTcpCluster"
                 =
managerClassName=3D"org.apache.catalina.cluster.session.DeltaManager"
                 expireSessionsOnShutdown=3D"false"
                 useDirtyFlag=3D"true"
                 notifyListenersOnReplication=3D"true">

            <Membership=20
                =
className=3D"org.apache.catalina.cluster.mcast.McastService"
                mcastAddr=3D"228.0.0.4"
                mcastPort=3D"45564"
                mcastFrequency=3D"500"
                mcastDropTime=3D"3000"/>

            <Receiver=20
                =
className=3D"org.apache.catalina.cluster.tcp.ReplicationListener"
                tcpListenAddress=3D"auto"
                tcpListenPort=3D"4001"
                tcpSelectorTimeout=3D"100"
                tcpThreadCount=3D"6"/>

            <Sender
                =
className=3D"org.apache.catalina.cluster.tcp.ReplicationTransmitter"
                replicationMode=3D"pooled"
                ackTimeout=3D"15000"/>

            <Valve =
className=3D"org.apache.catalina.cluster.tcp.ReplicationValve"
                   =
filter=3D".*\.gif;.*\.js;.*\.jpg;.*\.htm;.*\.html;.*\.txt;"/>
                  =20
            <Deployer =
className=3D"org.apache.catalina.cluster.deploy.FarmWarDeployer"
                      tempDir=3D"/tmp/war-temp/"
                      deployDir=3D"/tmp/war-deploy/"
                      watchDir=3D"/tmp/war-listen/"
                      watchEnabled=3D"false"/>
        </Cluster>
        -->       =20



        <!-- Normally, users must authenticate themselves to each web =
app
             individually.  Uncomment the following entry if you would =
like
             a user to be authenticated the first time they encounter a
             resource protected by a security constraint, and then have =
that
             user identity maintained across *all* web applications =
contained
             in this virtual host. -->
        <!--
        <Valve =
className=3D"org.apache.catalina.authenticator.SingleSignOn" />
        -->

        <!-- Access log processes all requests for this virtual host.  =
By
             default, log files are created in the "logs" directory =
relative to
             $CATALINA_HOME.  If you wish, you can specify a different
             directory with the "directory" attribute.  Specify either a =
relative
             (to $CATALINA_HOME) or absolute path to the desired =
directory.
        -->
        <!--
        <Valve className=3D"org.apache.catalina.valves.AccessLogValve"
                 directory=3D"logs"  prefix=3D"localhost_access_log." =
suffix=3D".txt"
                 pattern=3D"common" resolveHosts=3D"false"/>
        -->

        <!-- Access log processes all requests for this virtual host.  =
By
             default, log files are created in the "logs" directory =
relative to
             $CATALINA_HOME.  If you wish, you can specify a different
             directory with the "directory" attribute.  Specify either a =
relative
             (to $CATALINA_HOME) or absolute path to the desired =
directory.
             This access log implementation is optimized for maximum =
performance,
             but is hardcoded to support only the "common" and =
"combined" patterns.
        -->
        <!--
        <Valve =
className=3D"org.apache.catalina.valves.FastCommonAccessLogValve"
                 directory=3D"logs"  prefix=3D"localhost_access_log." =
suffix=3D".txt"
                 pattern=3D"common" resolveHosts=3D"false"/>
        -->

      </Host>

    </Engine>

  </Service>

</Server>

------=_NextPart_000_002C_01C6121A.C87AF9B0
Content-Type: text/xml;
	name="web.xml"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
	filename="web.xml"

<?xml version=3D"1.0" encoding=3D"ISO-8859-1"?>
<web-app xmlns=3D"http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi=3D"http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation=3D"http://java.sun.com/xml/ns/j2ee =
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    version=3D"2.4">

  <!-- =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =
Introduction =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D -->
  <!-- This document defines default values for *all* web applications   =
   -->
  <!-- loaded into this instance of Tomcat.  As each application is      =
   -->
  <!-- deployed, this file is processed, followed by the                 =
   -->
  <!-- "/WEB-INF/web.xml" deployment descriptor from your own            =
   -->
  <!-- applications.                                                     =
   -->
  <!--                                                                   =
   -->
  <!-- WARNING:  Do not configure application-specific resources here!   =
   -->
  <!-- They should go in the "/WEB-INF/web.xml" file in your =
application.   -->


  <!-- =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Built In =
Servlet Definitions =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D -->


  <!-- The default servlet for all web applications, that serves static  =
   -->
  <!-- resources.  It processes all requests that are not mapped to =
other   -->
  <!-- servlets with servlet mappings (defined either here or in your =
own   -->
  <!-- web.xml file.  This servlet supports the following initialization =
   -->
  <!-- parameters (default values are in square brackets):               =
   -->
  <!--                                                                   =
   -->
  <!--   debug               Debugging detail level for messages logged  =
   -->
  <!--                       by this servlet.  [0]                       =
   -->
  <!--                                                                   =
   -->
  <!--   fileEncoding        Encoding to be used to read static =
resources   -->
  <!--                       [platform default]                          =
   -->
  <!--                                                                   =
   -->
  <!--   input               Input buffer size (in bytes) when reading   =
   -->
  <!--                       resources to be served.  [2048]             =
   -->
  <!--                                                                   =
   -->
  <!--   listings            Should directory listings be produced if =
there -->
  <!--                       is no welcome file in this directory?  =
[true]  -->
  <!--                                                                   =
   -->
  <!--   output              Output buffer size (in bytes) when writing  =
   -->
  <!--                       resources to be served.  [2048]             =
   -->
  <!--                                                                   =
   -->
  <!--   readonly            Is this context "read only", so HTTP        =
   -->
  <!--                       commands like PUT and DELETE are            =
   -->
  <!--                       rejected?  [true]                           =
   -->
  <!--                                                                   =
   -->
  <!--   readmeFile          File name to display with the directory     =
   -->
  <!--                       contents. [null]                            =
   -->
  <!--                                                                   =
   -->
  <!--   sendfileSize        If the connector used supports sendfile, =
this  -->
  <!--                       represents the minimal file size in KB for  =
   -->
  <!--                       which sendfile will be used. Use a negative =
   -->
  <!--                       value to always disable sendfile.  [48]     =
   -->
  <!--                                                                   =
   -->
  <!--  For directory listing customization. Checks localXsltFile, then  =
   -->
  <!--  globalXsltFile, then defaults to original behavior.              =
   -->
  <!--                                                                   =
   -->
  <!--   localXsltFile       Make directory listings an XML doc and      =
   -->
  <!--                       pass the result to this style sheet =
residing   -->
  <!--                       in that directory. This overrides           =
   -->
  <!--                        globalXsltFile[null]                       =
   -->
  <!--                                                                   =
   -->
  <!--   globalXsltFile      Site wide configuration version of          =
   -->
  <!--                       localXsltFile This argument is expected     =
   -->
  <!--                       to be a physical file. [null]               =
   -->
  <!--                                                                   =
   -->
  <!--                                                                   =
   -->

    <servlet>
        <servlet-name>default</servlet-name>
        =
<servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class=
>
        <init-param>
            <param-name>debug</param-name>
            <param-value>0</param-value>
        </init-param>
        <init-param>
            <param-name>listings</param-name>
            <param-value>true</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>


  <!-- The "invoker" servlet, which executes anonymous servlet classes   =
   -->
  <!-- that have not been defined in a web.xml file.  Traditionally, =
this   -->
  <!-- servlet is mapped to the URL pattern "/servlet/*", but you can =
map   -->
  <!-- it to other patterns as well.  The extra path info portion of =
such a -->
  <!-- request must be the fully qualified class name of a Java class =
that  -->
  <!-- implements Servlet (or extends HttpServlet), or the servlet name  =
   -->
  <!-- of an existing servlet definition.     This servlet supports the  =
   -->
  <!-- following initialization parameters (default values are in square =
   -->
  <!-- brackets):                                                        =
   -->
  <!--                                                                   =
   -->
  <!--   debug               Debugging detail level for messages logged  =
   -->
  <!--                       by this servlet.  [0]                       =
   -->

    <servlet>
        <servlet-name>invoker</servlet-name>
        <servlet-class>
          org.apache.catalina.servlets.InvokerServlet
        </servlet-class>
        <init-param>
            <param-name>debug</param-name>
            <param-value>0</param-value>
        </init-param>
        <load-on-startup>2</load-on-startup>
    </servlet>

  <!-- The JSP page compiler and execution servlet, which is the =
mechanism  -->
  <!-- used by Tomcat to support JSP pages.  Traditionally, this servlet =
   -->
  <!-- is mapped to the URL pattern "*.jsp".  This servlet supports the  =
   -->
  <!-- following initialization parameters (default values are in square =
   -->
  <!-- brackets):                                                        =
   -->
  <!--                                                                   =
   -->
  <!--   checkInterval       If development is false and checkInterval =
is   -->
  <!--                       greater than zero, background compilations =
are -->
  <!--                       enabled. checkInterval is the time in =
seconds  -->
  <!--                       between checks to see if a JSP page needs =
to   -->
  <!--                       be recompiled. [0]                          =
   -->
  <!--                                                                   =
   -->
  <!--   modificationTestInterval                                        =
   -->
  <!--                       Causes a JSP (and its dependent files) to =
not  -->
  <!--                       be checked for modification during the      =
   -->
  <!--                       specified time interval (in seconds) from =
the  -->
  <!--                       last time the JSP was checked for           =
   -->
  <!--                       modification. A value of 0 will cause the =
JSP  -->
  <!--                       to be checked on every access.              =
   -->
  <!--                       Used in development mode only. [4]          =
   -->
  <!--                                                                   =
   -->
  <!--   compiler            Which compiler Ant should use to compile =
JSP   -->
  <!--                       pages.  See the Ant documentation for more  =
   -->
  <!--                       information. [javac]                        =
   -->
  <!--                                                                   =
   -->
  <!--   classdebuginfo      Should the class file be compiled with      =
   -->
  <!--                       debugging information?  [true]              =
   -->
  <!--                                                                   =
   -->
  <!--   classpath           What class path should I use while =
compiling   -->
  <!--                       generated servlets?  [Created dynamically   =
   -->
  <!--                       based on the current web application]       =
   -->
  <!--                                                                   =
   -->
  <!--   development         Is Jasper used in development mode? If =
true,   -->
  <!--                       the frequency at which JSPs are checked for =
   -->
  <!--                       modification may be specified via the       =
   -->
  <!--                       modificationTestInterval parameter. [true]  =
   -->
  <!--                                                                   =
   -->
  <!--   enablePooling       Determines whether tag handler pooling is   =
   -->
  <!--                       enabled  [true]                             =
   -->
  <!--                                                                   =
   -->
  <!--   fork                Tell Ant to fork compiles of JSP pages so =
that -->
  <!--                       a separate JVM is used for JSP page =
compiles   -->
  <!--                       from the one Tomcat is running in. [true]   =
   -->
  <!--                                                                   =
   -->
  <!--   ieClassId           The class-id value to be sent to Internet   =
   -->
  <!--                       Explorer when using <jsp:plugin> tags.      =
   -->
  <!--                       =
[clsid:8AD9C840-044E-11D1-B3E9-00805F499D93]   -->
  <!--                                                                   =
   -->
  <!--   javaEncoding        Java file encoding to use for generating =
java  -->
  <!--                       source files. [UTF8]                        =
   -->
  <!--                                                                   =
   -->
  <!--   keepgenerated       Should we keep the generated Java source =
code  -->
  <!--                       for each page instead of deleting it? =
[true]   -->
  <!--                                                                   =
   -->
  <!--   mappedfile          Should we generate static content with one  =
   -->
  <!--                       print statement per input line, to ease     =
   -->
  <!--                       debugging?  [true]                          =
   -->
  <!--                                                                   =
   -->
  <!--   trimSpaces          Should white spaces in template text =
between   -->
  <!--                       actions or directives be trimmed?  [false]  =
   -->
  <!--                                                                   =
   -->
  <!--   suppressSmap        Should the generation of SMAP info for =
JSR45   -->
  <!--                       debugging be suppressed?  [false]           =
   -->
  <!--                                                                   =
   -->
  <!--   dumpSmap            Should the SMAP info for JSR45 debugging be =
   -->
  <!--                       dumped to a file? [false]                   =
   -->
  <!--                       False if suppressSmap is true               =
   -->
  <!--                                                                   =
   -->
  <!--   genStrAsCharArray   Should text strings be generated as char    =
   -->
  <!--                       arrays, to improve performance in some =
cases?  -->
  <!--                       [false]                                     =
   -->
  <!--                                                                   =
   -->
  <!--   errorOnUseBeanInvalidClassAttribute                             =
   -->
  <!--                       Should Jasper issue an error when the value =
of -->
  <!--                       the class attribute in an useBean action is =
   -->
  <!--                       not a valid bean class?  [true]             =
   -->
  <!--                                                                   =
   -->
  <!--   scratchdir          What scratch directory should we use when   =
   -->
  <!--                       compiling JSP pages?  [default work =
directory  -->
  <!--                       for the current web application]            =
   -->
  <!--                                                                   =
   -->
  <!--   xpoweredBy          Determines whether X-Powered-By response    =
   -->
  <!--                       header is added by generated servlet  =
[false]  -->
  <!--                                                                   =
   -->
  <!-- If you wish to use Jikes to compile JSP pages:                    =
   -->
  <!--   Please see the "Using Jikes" section of the Jasper-HowTo        =
   -->
  <!--   page in the Tomcat documentation.                               =
   -->

    <servlet>
        <servlet-name>jsp</servlet-name>
        =
<servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
        <init-param>
            <param-name>fork</param-name>
            <param-value>false</param-value>
        </init-param>
        <init-param>
            <param-name>xpoweredBy</param-name>
            <param-value>false</param-value>
        </init-param>
        <load-on-startup>3</load-on-startup>
    </servlet>


  <!-- NOTE: An SSI Filter is also available as an alternative SSI       =
   -->
  <!-- implementation. Use either the Servlet or the Filter but NOT =
both.   -->
  <!--                                                                   =
   -->
  <!-- Server Side Includes processing servlet, which processes SSI      =
   -->
  <!-- directives in HTML pages consistent with similar support in web   =
   -->
  <!-- servers like Apache.  Traditionally, this servlet is mapped to =
the   -->
  <!-- URL pattern "*.shtml".  This servlet supports the following       =
   -->
  <!-- initialization parameters (default values are in square =
brackets):   -->
  <!--                                                                   =
   -->
  <!--   buffered            Should output from this servlet be =
buffered?   -->
  <!--                       (0=3Dfalse, 1=3Dtrue)  [0]                  =
       -->
  <!--                                                                   =
   -->
  <!--   debug               Debugging detail level for messages logged  =
   -->
  <!--                       by this servlet.  [0]                       =
   -->
  <!--                                                                   =
   -->
  <!--   expires             The number of seconds before a page with =
SSI   -->
  <!--                       directives will expire.  [No default]       =
   -->
  <!--                                                                   =
   -->
  <!--   isVirtualWebappRelative                                         =
   -->
  <!--                       Should "virtual" paths be interpreted as    =
   -->
  <!--                       relative to the context root, instead of    =
   -->
  <!--                       the server root?  (0=3Dfalse, 1=3Dtrue) [0] =
       -->
  <!--                                                                   =
   -->
  <!--   inputEncoding       The encoding to assume for SSI resources if =
   -->
  <!--                       one is not available from the resource.     =
   -->
  <!--                       [Platform default]                          =
   -->
  <!--                                                                   =
   -->
  <!--   outputEncoding      The encoding to use for the page that =
results  -->
  <!--                       from the SSI processing. [UTF-8]            =
   -->
  <!--                                                                   =
   -->
  <!--                                                                   =
   -->
  <!-- IMPORTANT: To use the SSI servlet, you also need to rename the    =
   -->
  <!--            $CATALINA_HOME/server/lib/servlets-ssi.renametojar =
file   -->
  <!--            to $CATALINA_HOME/server/lib/servlets-ssi.jar          =
   -->

<!--
    <servlet>
        <servlet-name>ssi</servlet-name>
        <servlet-class>
          org.apache.catalina.ssi.SSIServlet
        </servlet-class>
        <init-param>
          <param-name>buffered</param-name>
          <param-value>1</param-value>
        </init-param>
        <init-param>
          <param-name>debug</param-name>
          <param-value>0</param-value>
        </init-param>
        <init-param>
          <param-name>expires</param-name>
          <param-value>666</param-value>
        </init-param>
        <init-param>
          <param-name>isVirtualWebappRelative</param-name>
          <param-value>0</param-value>
        </init-param>
        <load-on-startup>4</load-on-startup>
    </servlet>
-->


  <!-- Common Gateway Includes (CGI) processing servlet, which supports  =
   -->
  <!-- execution of external applications that conform to the CGI spec   =
   -->
  <!-- requirements.  Typically, this servlet is mapped to the URL =
pattern  -->
  <!-- "/cgi-bin/*", which means that any CGI applications that are      =
   -->
  <!-- executed must be present within the web application.  This =
servlet   -->
  <!-- supports the following initialization parameters (default values  =
   -->
  <!-- are in square brackets):                                          =
   -->
  <!--                                                                   =
   -->
  <!--   cgiPathPrefix        The CGI search path will start at          =
   -->
  <!--                        webAppRootDir + File.separator + this =
prefix. -->
  <!--                        [WEB-INF/cgi]                              =
   -->
  <!--                                                                   =
   -->
  <!--   debug                Debugging detail level for messages logged =
   -->
  <!--                        by this servlet.  [0]                      =
   -->
  <!--                                                                   =
   -->
  <!--   executable           Name of the exectuable used to run the     =
   -->
  <!--                        script. [perl]                             =
   -->
  <!--                                                                   =
   -->
  <!--   parameterEncoding    Name of parameter encoding to be used with =
   -->
  <!--                        CGI servlet.                               =
   -->
  <!--                        =
[System.getProperty("file.encoding","UTF-8")] -->
  <!--                                                                   =
   -->
  <!--   passShellEnvironment Should the shell environment variables (if =
   -->
  <!--                        any) be passed to the CGI script? [false]  =
   -->
  <!--                                                                   =
   -->
  <!-- IMPORTANT: To use the CGI servlet, you also need to rename the    =
   -->
  <!--            $CATALINA_HOME/server/lib/servlets-cgi.renametojar =
file   -->
  <!--            to $CATALINA_HOME/server/lib/servlets-cgi.jar          =
   -->

<!--
    <servlet>
        <servlet-name>cgi</servlet-name>
        =
<servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class>
        <init-param>
          <param-name>debug</param-name>
          <param-value>6</param-value>
        </init-param>
        <init-param>
          <param-name>cgiPathPrefix</param-name>
          <param-value>WEB-INF/cgi</param-value>
        </init-param>
         <load-on-startup>5</load-on-startup>
    </servlet>
-->


  <!-- =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Built In Servlet =
Mappings =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 -->


  <!-- The servlet mappings for the built in servlets defined above.  =
Note  -->
  <!-- that, by default, the CGI and SSI servlets are *not* mapped.  You =
   -->
  <!-- must uncomment these mappings (or add them to your application's =
own -->
  <!-- web.xml deployment descriptor) to enable these services           =
   -->

    <!-- The mapping for the default servlet -->
    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

    <!-- The mapping for the invoker servlet -->
    <servlet-mapping>
        <servlet-name>invoker</servlet-name>
        <url-pattern>/servlet/*</url-pattern>
    </servlet-mapping>

    <!-- The mapping for the JSP servlet -->
    <servlet-mapping>
        <servlet-name>jsp</servlet-name>
        <url-pattern>*.jsp</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>jsp</servlet-name>
        <url-pattern>*.jspx</url-pattern>
    </servlet-mapping>

    <!-- The mapping for the SSI servlet -->
<!--
    <servlet-mapping>
        <servlet-name>ssi</servlet-name>
        <url-pattern>*.shtml</url-pattern>
    </servlet-mapping>
-->

    <!-- The mapping for the CGI Gateway servlet -->

<!--
    <servlet-mapping>
        <servlet-name>cgi</servlet-name>
        <url-pattern>/cgi-bin/*</url-pattern>
    </servlet-mapping>
-->


  <!-- =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Built In =
Filter Definitions =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D -->

  <!-- NOTE: An SSI Servlet is also available as an alternative SSI      =
   -->
  <!-- implementation. Use either the Servlet or the Filter but NOT =
both.   -->
  <!--                                                                   =
   -->
  <!-- Server Side Includes processing filter, which processes SSI       =
   -->
  <!-- directives in HTML pages consistent with similar support in web   =
   -->
  <!-- servers like Apache.  Traditionally, this filter is mapped to the =
   -->
  <!-- URL pattern "*.shtml", though it can be mapped to "*" as it will  =
   -->
  <!-- selectively enable/disable SSI processing based on mime types.  =
The  -->
  <!-- contentType init param allows you to apply SSI processing to JSP  =
   -->
  <!-- pages, javascript, or any other content you wish.  This filter    =
   -->
  <!-- supports the following initialization parameters (default values =
are -->
  <!-- in square brackets):                                              =
   -->
  <!--                                                                   =
   -->
  <!--   contentType         A regex pattern that must be matched before =
   -->
  <!--                       SSI processing is applied.                  =
   -->
  <!--                       [text/x-server-parsed-html(;.*)?]           =
   -->
  <!--                                                                   =
   -->
  <!--   debug               Debugging detail level for messages logged  =
   -->
  <!--                       by this servlet.  [0]                       =
   -->
  <!--                                                                   =
   -->
  <!--   expires             The number of seconds before a page with =
SSI   -->
  <!--                       directives will expire.  [No default]       =
   -->
  <!--                                                                   =
   -->
  <!--   isVirtualWebappRelative                                         =
   -->
  <!--                       Should "virtual" paths be interpreted as    =
   -->
  <!--                       relative to the context root, instead of    =
   -->
  <!--                       the server root?  (0=3Dfalse, 1=3Dtrue) [0] =
       -->
  <!--                                                                   =
   -->
  <!--                                                                   =
   -->
  <!-- IMPORTANT: To use the SSI filter, you also need to rename the     =
   -->
  <!--            $CATALINA_HOME/server/lib/servlets-ssi.renametojar =
file   -->
  <!--            to $CATALINA_HOME/server/lib/servlets-ssi.jar          =
   -->

<!--
    <filter>
        <filter-name>ssi</filter-name>
        <filter-class>
          org.apache.catalina.ssi.SSIFilter
        </filter-class>
        <init-param>
          <param-name>contentType</param-name>
          <param-value>text/x-server-parsed-html(;.*)?</param-value>
        </init-param>
        <init-param>
          <param-name>debug</param-name>
          <param-value>0</param-value>
        </init-param>
        <init-param>
          <param-name>expires</param-name>
          <param-value>666</param-value>
        </init-param>
        <init-param>
          <param-name>isVirtualWebappRelative</param-name>
          <param-value>0</param-value>
        </init-param>
    </filter>
-->


  <!-- =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =
Built In Filter Mappings =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D -->

  <!-- The mapping for the SSI Filter -->
<!--
    <filter-mapping>
        <filter-name>ssi</filter-name>
        <url-pattern>*.shtml</url-pattern>
    </filter-mapping>
-->


  <!-- =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =
Default Session Configuration =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D -->
  <!-- You can set the default session timeout (in minutes) for all =
newly   -->
  <!-- created sessions by modifying the value below.                    =
   -->

    <session-config>
        <session-timeout>30</session-timeout>
    </session-config>


  <!-- =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =
Default MIME Type Mappings =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D -->
  <!-- When serving static resources, Tomcat will automatically generate =
   -->
  <!-- a "Content-Type" header based on the resource's filename =
extension,  -->
  <!-- based on these mappings.  Additional mappings can be added here =
(to  -->
  <!-- apply to all web applications), or in your own application's =
web.xml -->
  <!-- deployment descriptor.                                            =
   -->

    <mime-mapping>
        <extension>abs</extension>
        <mime-type>audio/x-mpeg</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>ai</extension>
        <mime-type>application/postscript</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>aif</extension>
        <mime-type>audio/x-aiff</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>aifc</extension>
        <mime-type>audio/x-aiff</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>aiff</extension>
        <mime-type>audio/x-aiff</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>aim</extension>
        <mime-type>application/x-aim</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>art</extension>
        <mime-type>image/x-jg</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>asf</extension>
        <mime-type>video/x-ms-asf</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>asx</extension>
        <mime-type>video/x-ms-asf</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>au</extension>
        <mime-type>audio/basic</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>avi</extension>
        <mime-type>video/x-msvideo</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>avx</extension>
        <mime-type>video/x-rad-screenplay</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>bcpio</extension>
        <mime-type>application/x-bcpio</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>bin</extension>
        <mime-type>application/octet-stream</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>bmp</extension>
        <mime-type>image/bmp</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>body</extension>
        <mime-type>text/html</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>cdf</extension>
        <mime-type>application/x-cdf</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>cer</extension>
        <mime-type>application/x-x509-ca-cert</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>class</extension>
        <mime-type>application/java</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>cpio</extension>
        <mime-type>application/x-cpio</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>csh</extension>
        <mime-type>application/x-csh</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>css</extension>
        <mime-type>text/css</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>dib</extension>
        <mime-type>image/bmp</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>doc</extension>
        <mime-type>application/msword</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>dtd</extension>
        <mime-type>application/xml-dtd</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>dv</extension>
        <mime-type>video/x-dv</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>dvi</extension>
        <mime-type>application/x-dvi</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>eps</extension>
        <mime-type>application/postscript</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>etx</extension>
        <mime-type>text/x-setext</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>exe</extension>
        <mime-type>application/octet-stream</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>gif</extension>
        <mime-type>image/gif</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>gtar</extension>
        <mime-type>application/x-gtar</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>gz</extension>
        <mime-type>application/x-gzip</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>hdf</extension>
        <mime-type>application/x-hdf</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>hqx</extension>
        <mime-type>application/mac-binhex40</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>htc</extension>
        <mime-type>text/x-component</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>htm</extension>
        <mime-type>text/html</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>html</extension>
        <mime-type>text/html</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>hqx</extension>
        <mime-type>application/mac-binhex40</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>ief</extension>
        <mime-type>image/ief</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>jad</extension>
        <mime-type>text/vnd.sun.j2me.app-descriptor</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>jar</extension>
        <mime-type>application/java-archive</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>java</extension>
        <mime-type>text/plain</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>jnlp</extension>
        <mime-type>application/x-java-jnlp-file</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>jpe</extension>
        <mime-type>image/jpeg</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>jpeg</extension>
        <mime-type>image/jpeg</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>jpg</extension>
        <mime-type>image/jpeg</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>js</extension>
        <mime-type>text/javascript</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>jsf</extension>
        <mime-type>text/plain</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>jspf</extension>
        <mime-type>text/plain</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>kar</extension>
        <mime-type>audio/x-midi</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>latex</extension>
        <mime-type>application/x-latex</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>m3u</extension>
        <mime-type>audio/x-mpegurl</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>mac</extension>
        <mime-type>image/x-macpaint</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>man</extension>
        <mime-type>application/x-troff-man</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>mathml</extension>
        <mime-type>application/mathml+xml</mime-type>=20
    </mime-mapping>
    <mime-mapping>
        <extension>me</extension>
        <mime-type>application/x-troff-me</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>mid</extension>
        <mime-type>audio/x-midi</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>midi</extension>
        <mime-type>audio/x-midi</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>mif</extension>
        <mime-type>application/x-mif</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>mov</extension>
        <mime-type>video/quicktime</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>movie</extension>
        <mime-type>video/x-sgi-movie</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>mp1</extension>
        <mime-type>audio/x-mpeg</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>mp2</extension>
        <mime-type>audio/x-mpeg</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>mp3</extension>
        <mime-type>audio/x-mpeg</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>mpa</extension>
        <mime-type>audio/x-mpeg</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>mpe</extension>
        <mime-type>video/mpeg</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>mpeg</extension>
        <mime-type>video/mpeg</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>mpega</extension>
        <mime-type>audio/x-mpeg</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>mpg</extension>
        <mime-type>video/mpeg</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>mpv2</extension>
        <mime-type>video/mpeg2</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>ms</extension>
        <mime-type>application/x-wais-source</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>nc</extension>
        <mime-type>application/x-netcdf</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>oda</extension>
        <mime-type>application/oda</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>ogg</extension>
        <mime-type>application/ogg</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>pbm</extension>
        <mime-type>image/x-portable-bitmap</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>pct</extension>
        <mime-type>image/pict</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>pdf</extension>
        <mime-type>application/pdf</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>pgm</extension>
        <mime-type>image/x-portable-graymap</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>pic</extension>
        <mime-type>image/pict</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>pict</extension>
        <mime-type>image/pict</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>pls</extension>
        <mime-type>audio/x-scpls</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>png</extension>
        <mime-type>image/png</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>pnm</extension>
        <mime-type>image/x-portable-anymap</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>pnt</extension>
        <mime-type>image/x-macpaint</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>ppm</extension>
        <mime-type>image/x-portable-pixmap</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>ppt</extension>
        <mime-type>application/powerpoint</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>ps</extension>
        <mime-type>application/postscript</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>psd</extension>
        <mime-type>image/x-photoshop</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>qt</extension>
        <mime-type>video/quicktime</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>qti</extension>
        <mime-type>image/x-quicktime</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>qtif</extension>
        <mime-type>image/x-quicktime</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>ras</extension>
        <mime-type>image/x-cmu-raster</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>rdf</extension>
        <mime-type>application/rdf+xml</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>rgb</extension>
        <mime-type>image/x-rgb</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>rm</extension>
        <mime-type>application/vnd.rn-realmedia</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>roff</extension>
        <mime-type>application/x-troff</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>rtf</extension>
        <mime-type>application/rtf</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>rtx</extension>
        <mime-type>text/richtext</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>sh</extension>
        <mime-type>application/x-sh</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>shar</extension>
        <mime-type>application/x-shar</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>shtml</extension>
        <mime-type>text/x-server-parsed-html</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>smf</extension>
        <mime-type>audio/x-midi</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>sit</extension>
        <mime-type>application/x-stuffit</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>snd</extension>
        <mime-type>audio/basic</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>src</extension>
        <mime-type>application/x-wais-source</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>sv4cpio</extension>
        <mime-type>application/x-sv4cpio</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>sv4crc</extension>
        <mime-type>application/x-sv4crc</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>svg</extension>
        <mime-type>image/svg+xml</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>swf</extension>
        <mime-type>application/x-shockwave-flash</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>t</extension>
        <mime-type>application/x-troff</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>tar</extension>
        <mime-type>application/x-tar</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>tcl</extension>
        <mime-type>application/x-tcl</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>tex</extension>
        <mime-type>application/x-tex</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>texi</extension>
        <mime-type>application/x-texinfo</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>texinfo</extension>
        <mime-type>application/x-texinfo</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>tif</extension>
        <mime-type>image/tiff</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>tiff</extension>
        <mime-type>image/tiff</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>tr</extension>
        <mime-type>application/x-troff</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>tsv</extension>
        <mime-type>text/tab-separated-values</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>txt</extension>
        <mime-type>text/plain</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>ulw</extension>
        <mime-type>audio/basic</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>ustar</extension>
        <mime-type>application/x-ustar</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>vxml</extension>
        <mime-type>application/voicexml+xml</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>xbm</extension>
        <mime-type>image/x-xbitmap</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>xht</extension>
        <mime-type>application/xhtml+xml</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>xhtml</extension>
        <mime-type>application/xhtml+xml</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>xml</extension>
        <mime-type>application/xml</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>xpm</extension>
        <mime-type>image/x-xpixmap</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>xsl</extension>
        <mime-type>application/xml</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>xslt</extension>
        <mime-type>application/xslt+xml</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>xul</extension>
        <mime-type>application/vnd.mozilla.xul+xml</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>xwd</extension>
        <mime-type>image/x-xwindowdump</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>wav</extension>
        <mime-type>audio/x-wav</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>svg</extension>
        <mime-type>image/svg</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>svgz</extension>
        <mime-type>image/svg</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>vsd</extension>
        <mime-type>application/x-visio</mime-type>
    </mime-mapping>
    <mime-mapping>
        <!-- Wireless Bitmap -->
        <extension>wbmp</extension>
        <mime-type>image/vnd.wap.wbmp</mime-type>
    </mime-mapping>
    <mime-mapping>
        <!-- WML Source -->
        <extension>wml</extension>
        <mime-type>text/vnd.wap.wml</mime-type>
    </mime-mapping>
    <mime-mapping>
        <!-- Compiled WML -->
        <extension>wmlc</extension>
        <mime-type>application/vnd.wap.wmlc</mime-type>
    </mime-mapping>
    <mime-mapping>
        <!-- WML Script Source -->
        <extension>wmls</extension>
        <mime-type>text/vnd.wap.wmlscript</mime-type>
    </mime-mapping>
    <mime-mapping>
        <!-- Compiled WML Script -->
        <extension>wmlscriptc</extension>
        <mime-type>application/vnd.wap.wmlscriptc</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>wrl</extension>
        <mime-type>x-world/x-vrml</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>Z</extension>
        <mime-type>application/x-compress</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>z</extension>
        <mime-type>application/x-compress</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>zip</extension>
        <mime-type>application/zip</mime-type>
    </mime-mapping>


  <!-- =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =
Default Welcome File List =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D -->
  <!-- When a request URI refers to a directory, the default servlet =
looks  -->
  <!-- for a "welcome file" within that directory and, if present,       =
   -->
  <!-- to the corresponding resource URI for display.  If no welcome =
file   -->
  <!-- is present, the default servlet either serves a directory =
listing,   -->
  <!-- or returns a 404 status, depending on how it is configured.       =
   -->
  <!--                                                                   =
   -->
  <!-- If you define welcome files in your own application's web.xml     =
   -->
  <!-- deployment descriptor, that list *replaces* the list configured   =
   -->
  <!-- here, so be sure that you include any of the default values that  =
   -->
  <!-- you wish to include.                                              =
   -->

    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>

</web-app>


------=_NextPart_000_002C_01C6121A.C87AF9B0
Content-Type: text/plain; charset=us-ascii

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
------=_NextPart_000_002C_01C6121A.C87AF9B0--