You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by co...@locus.apache.org on 2000/11/04 00:19:03 UTC

cvs commit: jakarta-tomcat/src/webdav/webdav/WEB-INF web.xml

costin      00/11/03 15:19:01

  Modified:    .        build.xml
               src/webdav/org/apache/tomcat/webdav DefaultServlet.java
                        WebdavServlet.java
  Added:       src/webdav/webdav build.xml index.html tomcat-power.gif
                        tomcat.gif
               src/webdav/webdav/WEB-INF web.xml
  Log:
  WebDav seems to work fine in DAVExplorer. Excelent code...
  
  The directory structure is a mess, I'll fix it later ( i.e. move
  all the sources in src/webdav/WEB-INF/src, make it a standalone
  webapplication).
  
  So far it seems to work with absolutely no dependency on tomcat -
  if someone has another container it would be nice to test it!!!!
  ( the .war will be available soon, need to fix the build )
  
  Revision  Changes    Path
  1.91      +10 -0     jakarta-tomcat/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/build.xml,v
  retrieving revision 1.90
  retrieving revision 1.91
  diff -u -r1.90 -r1.91
  --- build.xml	2000/11/03 21:27:31	1.90
  +++ build.xml	2000/11/03 23:18:51	1.91
  @@ -249,9 +249,14 @@
         </classpath>
         <include name="org/apache/tomcat/webdav/**" />    
       </javac>
  +    <copydir src="src/webdav/org/apache/tomcat" 
  +             dest="${tomcat.build}/classes/org/apache/tomcat">
  +      <include name="**/*.properties" />
  +    </copydir>
       <jar jarfile="${tomcat.build}/lib/webdav.jar"
         basedir="${tomcat.build}/classes" > 
         <include name="org/apache/tomcat/webdav/**" /> 
  +      <include name="org/apache/tomcat/webdav/**/*.properties" /> 
       </jar>
     </target>
   
  @@ -354,6 +359,11 @@
       <javac srcdir="src/examples/jsp/plugin/applet"
         optimize="${optimize}"
         destdir="${tomcat.build}/webapps/examples/jsp/plugin/applet"/>
  +
  +    <!-- webdav -->
  +    <mkdir dir="${tomcat.build}/webapps/webdav"/>
  +    <copydir src="src/webdav/webdav" dest="${tomcat.build}/webapps/webdav"/>
  +
   
       <!-- Tomcat profiling webapp - not ready for check in yet
       <mkdir dir="${tomcat.build}/webapps/prof"/>
  
  
  
  1.2       +25 -10    jakarta-tomcat/src/webdav/org/apache/tomcat/webdav/DefaultServlet.java
  
  Index: DefaultServlet.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/src/webdav/org/apache/tomcat/webdav/DefaultServlet.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- DefaultServlet.java	2000/11/03 21:27:37	1.1
  +++ DefaultServlet.java	2000/11/03 23:18:53	1.2
  @@ -110,7 +110,7 @@
    *
    * @author Craig R. McClanahan
    * @author Remy Maucherat
  - * @version $Revision: 1.1 $ $Date: 2000/11/03 21:27:37 $
  + * @version $Revision: 1.2 $ $Date: 2000/11/03 23:18:53 $
    */
   
   public class DefaultServlet
  @@ -282,6 +282,27 @@
   
       // ------------------------------------------------------ Protected Methods
   
  +    protected Resources getResources(HttpServletRequest req) {
  +	ServletContext sc=getServletContext();
  +	String docBase=sc.getRealPath("");
  +	// XXX call getAttribute() to get a container-specific
  +	// docBase that may work for jar resources
  +	FileResources res=(FileResources)sc.
  +	    getAttribute( "webdav.Resources" );
  +	if(res==null ) {
  +	    res=new FileResources();
  +	    res.setDocBase( docBase );
  +	    res.setContextPath(req.getContextPath() ); 
  +	    System.out.println("Setting docBase to " + docBase );
  +	    sc.setAttribute( "webdav.Resources", res );
  +	}
  +	// XXX the expire must be integrated in a different way,
  +	// we'll not start the expire thread right now.
  +	
  +	return res;
  +    }
  +
  +
   
       /**
        * Return the relative path associated with this servlet.
  @@ -371,12 +392,6 @@
       }
   
   
  -    protected Resources getResources() {
  -	// XXX get context resources
  -	return null;//new Container( getServletContext() );
  -    }
  -
  -
       /**
        * Process a POST request for the specified resource.
        *
  @@ -402,7 +417,7 @@
               resp.sendError(HttpServletResponse.SC_NOT_IMPLEMENTED);
           }
           
  -        Resources resources = getResources();
  +        Resources resources = getResources(req);
           
           boolean exists = resources.exists(path);
           
  @@ -440,7 +455,7 @@
           
           String path = getRelativePath(req);
           
  -        Resources resources = getResources();
  +        Resources resources = getResources(req);
           
           boolean exists = resources.exists(path);
           
  @@ -1147,7 +1162,7 @@
   	    return;
   	}
   
  -        Resources resources = getResources();
  +        Resources resources = getResources(request);
           ResourceInfo resourceInfo = new ResourceInfo(path, resources);
   
           if (!resourceInfo.exists) {
  
  
  
  1.2       +7 -7      jakarta-tomcat/src/webdav/org/apache/tomcat/webdav/WebdavServlet.java
  
  Index: WebdavServlet.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/src/webdav/org/apache/tomcat/webdav/WebdavServlet.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- WebdavServlet.java	2000/11/03 21:27:37	1.1
  +++ WebdavServlet.java	2000/11/03 23:18:54	1.2
  @@ -115,7 +115,7 @@
    * are handled by the DefaultServlet.
    *
    * @author Remy Maucherat
  - * @version $Revision: 1.1 $ $Date: 2000/11/03 21:27:37 $
  + * @version $Revision: 1.2 $ $Date: 2000/11/03 23:18:54 $
    */
   
   public class WebdavServlet
  @@ -365,7 +365,7 @@
   	resp.addHeader("DAV", "1,2");
           String methodsAllowed = null;
           
  -        Resources resources = getResources();
  +        Resources resources = getResources(req);
           
   	if (!resources.exists(path)) {
   	    methodsAllowed = "OPTIONS, MKCOL, PUT, LOCK";
  @@ -478,7 +478,7 @@
               
           }
           
  -        Resources resources = getResources();
  +        Resources resources = getResources(req);
           
   	if (!resources.exists(path)) {
   	    resp.sendError(HttpServletResponse.SC_NOT_FOUND, path);
  @@ -597,7 +597,7 @@
           
           String path = getRelativePath(req);
           
  -        Resources resources = getResources();
  +        Resources resources = getResources(req);
           
   	// Can't create a collection if a resource already exists at the given
           // path
  @@ -914,7 +914,7 @@
           
           lock.path = path;
           
  -        Resources resources = getResources();
  +        Resources resources = getResources(req);
           
           Enumeration locksList = null;
           
  @@ -1414,7 +1414,7 @@
           
           // Overwriting the destination
           
  -        Resources resources = getResources();
  +        Resources resources = getResources(req);
           
           if (overwrite) {
               
  @@ -1548,7 +1548,7 @@
               return false;
           }
           
  -        Resources resources = getResources();
  +        Resources resources = getResources(req);
           
   	if (!resources.exists(path)) {
               resp.sendError(WebdavStatus.SC_NOT_FOUND);
  
  
  
  1.1                  jakarta-tomcat/src/webdav/webdav/build.xml
  
  Index: build.xml
  ===================================================================
  <project name="webdav" default="build-main" basedir=".">
  
  
    <!-- ===================== Initialize Property Values =================== -->
    <property name="build.compiler"  value="classic"/>
    <property name="build.dir"       value="../../../build/webapps"/>
    <property name="dist.dir"        value="../../../dist/webapps"/>
    <property name="servletapi.home" value="../../../jakarta-servletapi"/>
    <property name="webapp.name"     value="webdav"/>
  
  
    <!-- ================== Derived Property Values ========================= -->
    <property name="servlet.jar"     value="${servletapi.home}/lib/servlet.jar"/>
  
  
    <!-- =================== BUILD: Create Directories ====================== -->
    <target name="build-prepare">
      <mkdir dir="${build.dir}"/>
      <mkdir dir="${build.dir}/${webapp.name}"/>
    </target>
  
  
    <!-- ================ BUILD: Copy Static Files ========================== -->
    <target name="build-static" depends="build-prepare">
      <copydir src="." dest="${build.dir}/${webapp.name}"
               excludes="build.*"/>
    </target>
  
  
    <!-- ================= BUILD: Compile Server Components ================= -->
    <target name="build-main" depends="build-static"/>
  
  
    <!-- ==================== BUILD: Rebuild Everything ===================== -->
    <target name="all" depends="build-clean,build-main"/>
  
  
    <!-- ======================= BUILD: Clean Directory ===================== -->
    <target name="build-clean">
      <deltree dir="${build.dir}/${webapp.name}"/>
    </target>
  
  
    <!-- ======================= DIST: Create Directories =================== -->
    <target name="dist-prepare">
      <mkdir dir="${dist.dir}"/>
    </target>
  
  
    <!-- ======================= DIST: Create Distribution Files ============ -->
    <target name="dist" depends="build-main,dist-prepare">
        <jar   jarfile="${dist.dir}/${webapp.name}.war"
               basedir="${build.dir}/${webapp.name}" includes="**"/>
    </target>
  
  
    <!-- ======================= DIST: Clean Directory ====================== -->
    <target name="dist-clean">
      <deltree dir="${dist.dir}/${webapp.name}"/>
    </target>
  
  
    <!-- ====================== Convenient Synonyms ========================= -->
    <target name="clean" depends="build-clean,dist-clean"/>
  
  
  </project>
  
  
  
  1.1                  jakarta-tomcat/src/webdav/webdav/index.html
  
  Index: index.html
  ===================================================================
  <!doctype html public "-//w3c//dtd html 4.0 transitional//en">
  <html>
  <head>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  <meta name="GENERATOR" content="Mozilla/4.72 [en] (WinNT; U) [Netscape]">
  <meta name="Author" content="Anil K. Vijendran">
  <title>Tomcat v4.0 dev</title>
  </head>
  <body bgcolor="#FFFFFF">
  <img SRC="tomcat.gif" height=92 width=130 align=LEFT><b><font face="Arial, Helvetica, sans-serif"><font size=+3>Tomcat</font></font></b> 
  <br>
  <b><font face="Arial, Helvetica, sans-serif"><font size=-1>Version
  4.0 dev</font></font></b>
  <p>This is the home page for the webdav context. This page is located at:
  <ul>
  <li>
  <font face="Courier New, Courier,mono">$TOMCAT_HOME/webapps/webdav/index.html</font></li>
  </ul>
  
  <p>Tomcat 4.0 includes built-in support for WebDAV level 2, which enables 
  remote authoring of the website. You can test these capabilities using a WebDAV
  client like MS WebFolders (included with IE 4.0 and up), MS Office 2000, DAV
  Explorer (others are listed on the webpages linked below), and point to the
  <b>/webdav</b> path of the server.
  
  <p>This test context is DAV enabled, but has been set up in read-only mode for
  safety reasons. It can be put in read-write mode by editing the web 
  application descriptor file (WEB-INF/web.xml).
  
  <p>Documentation on WebDAV:</p>
  <ul>
  <li><b><a href="http://www.webdav.org">General info on WebDAV</a></b></li>
  <li><b><a href="http://www.ics.uci.edu/pub/ietf/webdav/">WebDAV working 
  group</a></b></li>
  <li><b><a href="http://www.webdav.org/projects/">WebDAV clients</a></b></li>
  </ul>
  
  
  <hr>
  <p align="right"><font size=-1><img src="tomcat-power.gif" width="77" height="80"></font><br>
  &nbsp;
  <font size=-1>Copyright &copy; 1999-2000 Apache Software Foundation</font><br>
  <font size=-1>All Rights Reserved</font> <br>
  &nbsp;</p>
  <p align="right">&nbsp;</p>
  </body>
  </html>
  
  
  
  1.1                  jakarta-tomcat/src/webdav/webdav/tomcat-power.gif
  
  	<<Binary file>>
  
  
  1.1                  jakarta-tomcat/src/webdav/webdav/tomcat.gif
  
  	<<Binary file>>
  
  
  1.1                  jakarta-tomcat/src/webdav/webdav/WEB-INF/web.xml
  
  Index: web.xml
  ===================================================================
  <?xml version="1.0" encoding="ISO-8859-1"?>
  
  <!DOCTYPE web-app
      PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
      "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
  
  <web-app>
  
    <servlet>
      <servlet-name>webdav</servlet-name>
      <servlet-class>org.apache.tomcat.webdav.WebdavServlet</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>
      <!-- Uncomment this to enable read and write access -->
  <!--
      <init-param>
        <param-name>readonly</param-name>
        <param-value>false</param-value>
      </init-param>
  -->
      <!--load-on-startup>1</load-on-startup-->
    </servlet>
  
    <!-- The mapping for the webdav servlet -->
    <servlet-mapping>
      <servlet-name>webdav</servlet-name>
      <url-pattern>/</url-pattern>
    </servlet-mapping>
  
    <!-- Establish the default MIME type mappings -->
    <mime-mapping>
      <extension>txt</extension>
      <mime-type>text/plain</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>html</extension>
      <mime-type>text/html</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>htm</extension>
      <mime-type>text/html</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>gif</extension>
      <mime-type>image/gif</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>jpg</extension>
      <mime-type>image/jpeg</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>java</extension>
      <mime-type>text/plain</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>body</extension>
      <mime-type>text/html</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>rtx</extension>
      <mime-type>text/richtext</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>tsv</extension>
      <mime-type>text/tab-separated-values</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>etx</extension>
      <mime-type>text/x-setext</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>ps</extension>
      <mime-type>application/x-postscript</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>class</extension>
      <mime-type>application/java</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>csh</extension>
      <mime-type>application/x-csh</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>sh</extension>
      <mime-type>application/x-sh</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>texinfo</extension>
      <mime-type>application/x-texinfo</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>texi</extension>
      <mime-type>application/x-texinfo</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>t</extension>
      <mime-type>application/x-troff</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>tr</extension>
      <mime-type>application/x-troff</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>roff</extension>
      <mime-type>application/x-troff</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>man</extension>
      <mime-type>application/x-troff-man</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>me</extension>
      <mime-type>application/x-troff-me</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>ms</extension>
      <mime-type>application/x-wais-source</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>src</extension>
      <mime-type>application/x-wais-source</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>zip</extension>
      <mime-type>application/zip</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>bcpio</extension>
      <mime-type>application/x-bcpio</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>cpio</extension>
      <mime-type>application/x-cpio</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>gtar</extension>
      <mime-type>application/x-gtar</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>shar</extension>
      <mime-type>application/x-shar</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>tar</extension>
      <mime-type>application/x-tar</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>ustar</extension>
      <mime-type>application/x-ustar</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>dvi</extension>
      <mime-type>application/x-dvi</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>hdf</extension>
      <mime-type>application/x-hdf</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>latex</extension>
      <mime-type>application/x-latex</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>bin</extension>
      <mime-type>application/octet-stream</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>oda</extension>
      <mime-type>application/oda</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>pdf</extension>
      <mime-type>application/pdf</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>ps</extension>
      <mime-type>application/postscript</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>eps</extension>
      <mime-type>application/postscript</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>ai</extension>
      <mime-type>application/postscript</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>rtf</extension>
      <mime-type>application/rtf</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>nc</extension>
      <mime-type>application/x-netcdf</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>cdf</extension>
      <mime-type>application/x-netcdf</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>cer</extension>
      <mime-type>application/x-x509-ca-cert</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>exe</extension>
      <mime-type>application/octet-stream</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>gz</extension>
      <mime-type>application/x-gzip</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>hqx</extension>
      <mime-type>application/mac-binhex40</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>mif</extension>
      <mime-type>application/x-mif</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>ief</extension>
      <mime-type>image/ief</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>tiff</extension>
      <mime-type>image/tiff</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>tif</extension>
      <mime-type>image/tiff</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>ras</extension>
      <mime-type>image/x-cmu-raster</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>pnm</extension>
      <mime-type>image/x-portable-anymap</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>pbm</extension>
      <mime-type>image/x-portable-bitmap</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>pgm</extension>
      <mime-type>image/x-portable-graymap</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>ppm</extension>
      <mime-type>image/x-portable-pixmap</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>rgb</extension>
      <mime-type>image/x-rgb</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>xbm</extension>
      <mime-type>image/x-xbitmap</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>xpm</extension>
      <mime-type>image/x-xpixmap</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>xwd</extension>
      <mime-type>image/x-xwindowdump</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>au</extension>
      <mime-type>audio/basic</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>snd</extension>
      <mime-type>audio/basic</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>aif</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>aifc</extension>
      <mime-type>audio/x-aiff</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>wav</extension>
      <mime-type>audio/x-wav</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>mpeg</extension>
      <mime-type>video/mpeg</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>mpg</extension>
      <mime-type>video/mpeg</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>mpe</extension>
      <mime-type>video/mpeg</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>qt</extension>
      <mime-type>video/quicktime</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>mov</extension>
      <mime-type>video/quicktime</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>avi</extension>
      <mime-type>video/x-msvideo</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>movie</extension>
      <mime-type>video/x-sgi-movie</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>avx</extension>
      <mime-type>video/x-rad-screenplay</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>wrl</extension>
      <mime-type>x-world/x-vrml</mime-type>
    </mime-mapping>
    <mime-mapping>
      <extension>mpv2</extension>
      <mime-type>video/mpeg2</mime-type>
    </mime-mapping>
  
    <!-- Establish the default list of welcome files -->
    <welcome-file-list>
      <welcome-file>index.jsp</welcome-file>
      <welcome-file>index.html</welcome-file>
      <welcome-file>index.htm</welcome-file>
    </welcome-file-list>
  
    <!-- ================ Security Constraints for Testing =============== -->
  
  <!--
    <security-constraint>
      <web-resource-collection>
        <web-resource-name>The Entire Web Application</web-resource-name>
        <url-pattern>/*</url-pattern>
      </web-resource-collection>
      <auth-constraint>
        <role-name>tomcat</role-name>
      </auth-constraint>
    </security-constraint>
  
    <login-config>
      <auth-method>BASIC</auth-method>
      <realm-name>Tomcat Supported Realm</realm-name>
    </login-config>
  
    <security-role>
      <description>
        An example role defined in "conf/tomcat-users.xml"
      </description>
      <role-name>tomcat</role-name>
    </security-role>
  -->
  
  </web-app>