You are viewing a plain text version of this content. The canonical link for it is here.
Posted to watchdog-dev@jakarta.apache.org by cr...@apache.org on 2001/07/21 01:07:56 UTC

cvs commit: jakarta-watchdog-4.0/src/conf build.xml jsp-gtest.xml servlet-gtest.xml runtest.xml

craigmcc    01/07/20 16:07:56

  Modified:    .        build.xml
               src/conf jsp-gtest.xml servlet-gtest.xml
  Added:       .        BUILDING.txt README.txt RUNNING.txt
               doc      NewComers.README
               src/conf build.xml
  Removed:     .        NewComers.README Readme build.bat build.sh
               src/bin  watchdog.bat watchdog.sh
               src/conf runtest.xml
  Log:
  Bring Watchdog 4.0 up to current build process standards, and update the
  documentation related to building and using the suite.
  
  Revision  Changes    Path
  1.11      +208 -187  jakarta-watchdog-4.0/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-watchdog-4.0/build.xml,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- build.xml	2001/05/21 22:05:24	1.10
  +++ build.xml	2001/07/20 23:07:56	1.11
  @@ -1,195 +1,216 @@
  -<project name="jakarta-watchdog" default="main" basedir=".">
  +<project name="Build Watchdog Test Suite" default="main" basedir=".">
   
  -   <!-- System property definitions -->
   
  -   <property file="build.properties"/>
  -   <property file="${user.home}/build.properties"/>
  +  <!-- =================== Environmental Properties ======================= -->
   
  -   <property name="ant.home" value="../jakarta-ant"/>
  -   <property name="build.compiler" value="classic"/>
  -   <property name="servletapi.home" value="../jakarta-servletapi-4"/>
  -   <property name="servlet.jar" value="${servletapi.home}/lib/servlet.jar"/>
  -   <property name="watchdog.build" value="./build"/>
  -   <property name="watchdog.dist" value="./dist"/>
  -   <property name="watchdog-classpath" value="${servlet.jar}:./src/tools" />
  +  <!-- Load user property definition overrides -->
  +  <property file="build.properties"/>
  +  <property file="${user.home}/build.properties"/>
  +
  +  <!-- Establish property definition defaults -->
  +  <property name="compile.debug"       value="true"/>
  +  <property name="compile.deprecation" value="false"/>
  +  <property name="compile.optimize"    value="true"/>
  +  <property name="servlet.jar"
  +                              value="../jakarta-servletapi-4/lib/servlet.jar"/>
  +  <property name="watchdog.build"      value="build"/>
  +  <property name="watchdog.dist"       value="dist"/>
  +
  +  <!-- Establish compilation classpath -->
  +  <path id="compile.classpath">
  +    <pathelement location="${servlet.jar}"/>
  +  </path>
  +
  +  <!-- Establish conversion classpath -->
  +  <path id="convert.classpath">
  +    <pathelement location="${watchdog.build}/classes"/>
  +    <pathelement location="${servlet.jar}"/>
  +  </path>
  +
  +
  +  <!-- ===================== Prepare Directories ========================= -->
  +  <target name="prepare">
  +
  +    <mkdir dir="${watchdog.build}"/>
  +    <mkdir dir="${watchdog.build}/classes"/>
  +    <mkdir dir="${watchdog.build}/lib"/>
  +    <mkdir dir="${watchdog.build}/lib/jsp-golden"/>
  +    <mkdir dir="${watchdog.build}/lib/servlet-golden"/>
  +    <mkdir dir="${watchdog.build}/webapps"/>
  +    <mkdir dir="${watchdog.build}/webapps/jsp-tests"/>
  +    <mkdir dir="${watchdog.build}/webapps/jsp-tests/WEB-INF"/>
  +    <mkdir dir="${watchdog.build}/webapps/jsp-tests/WEB-INF/classes"/>
  +    <mkdir dir="${watchdog.build}/webapps/jsp-tests/WEB-INF/lib"/>
  +    <mkdir dir="${watchdog.build}/webapps/servlet-tests"/>
  +    <mkdir dir="${watchdog.build}/webapps/servlet-tests/WEB-INF"/>
  +    <mkdir dir="${watchdog.build}/webapps/servlet-tests/WEB-INF/classes"/>
  +    <mkdir dir="${watchdog.build}/webapps/servlet-tests/WEB-INF/lib"/>
  +
  +  </target>
  +
  +
  +  <!-- ======================= Static Files ============================== -->
  +  <target name="static" depends="prepare">
  +
  +    <!-- Top level files -->
  +    <copy    todir="${watchdog.build}">
  +      <!-- FIXME - build.xml file to actually run the tests -->
  +      <fileset dir="." includes="BUILDING.txt"/>
  +      <fileset dir="." includes="LICENSE"/>
  +      <fileset dir="." includes="README.txt"/>
  +      <fileset dir="." includes="RUNNING.txt"/>
  +    </copy>
  +
  +    <!-- Configuration files -->
  +    <copy    todir="${watchdog.build}">
  +      <fileset dir="src/conf" includes="build.xml"/>
  +    </copy>
  +    <copy    todir="${watchdog.build}/conf">
  +      <fileset dir="src/conf" excludes="build.xml"/>
  +    </copy>
  +
  +    <!-- Documentation files -->
  +    <copy    todir="${watchdog.build}/doc">
  +      <fileset dir="doc"/>
  +    </copy>
  +
  +    <!-- Library files -->
  +    <copy    todir="${watchdog.build}/lib">
  +      <fileset dir="${ant.home}/lib" includes="ant.jar"/>
  +      <fileset dir="${ant.home}/lib" includes="crimson.jar"/>
  +      <fileset dir="${ant.home}/lib" includes="jaxp.jar"/>
  +      <fileset dir="${ant.home}/lib" includes="parser.jar"/>
  +    </copy>
  +    <copy   tofile="${watchdog.build}/lib/servlet.jar"
  +              file="${servlet.jar}" />
  +
  +    <!-- Client golden files -->
  +    <copy    todir="${watchdog.build}/lib/jsp-golden">
  +      <fileset dir="src/clients/org/apache/jcheck/jsp/client"/>
  +    </copy>
  +    <copy    todir="${watchdog.build}/lib/servlet-golden">
  +      <fileset dir="src/clients/org/apache/jcheck/servlet/client"/>
  +    </copy>
  +
  +    <!-- Web application static files -->
  +    <copy    todir="${watchdog.build}/webapps/jsp-tests">
  +      <fileset dir="src/server/jsp-tests"/>
  +    </copy>
  +    <copy    todir="${watchdog.build}/webapps/servlet-tests">
  +      <fileset dir="src/server/servlet-tests"/>
  +    </copy>
  +
  +  </target>
  +
  +
  +  <!-- ======================== Compile Classes ========================== -->
  +  <target name="compile" depends="static"
  +   description="Compile all classes">
  +
  +    <!-- Clients -->
  +    <javac srcdir="src/clients"
  +          destdir="${watchdog.build}/classes"
  +            debug="${compile.debug}"
  +      deprecation="${compile.deprecation}"
  +         optimize="${compile.optimize}">
  +      <classpath refid="compile.classpath"/>
  +    </javac>
  +    <copy   todir="${watchdog.build}/classes">
  +      <fileset dir="src/clients" includes="**/*.properties"/>
  +    </copy>
  +
  +    <!-- JSP tests -->
  +    <javac srcdir="src/server/jsp-tests/WEB-INF/classes"
  +          destdir="${watchdog.build}/webapps/jsp-tests/WEB-INF/classes"
  +           debug="${compile.debug}"
  +     deprecation="${compile.deprecation}"
  +        optimize="${compile.optimize}">
  +      <classpath refid="compile.classpath"/>
  +    </javac>
  +
  +    <!-- Servlet tests -->
  +    <javac srcdir="src/server/servlet-tests/WEB-INF/classes"
  +          destdir="${watchdog.build}/webapps/servlet-tests/WEB-INF/classes"
  +           debug="${compile.debug}"
  +     deprecation="${compile.deprecation}"
  +        optimize="${compile.optimize}">
  +      <classpath refid="compile.classpath"/>
  +    </javac>
  +
  +    <!-- Tools -->
  +    <javac srcdir="src/tools"
  +          destdir="${watchdog.build}/classes"
  +            debug="${compile.debug}"
  +      deprecation="${compile.deprecation}"
  +         optimize="${compile.optimize}">
  +      <classpath refid="compile.classpath"/>
  +    </javac>
  +
  +  </target>
  +
  +
  +  <!-- ===================== Compile JSP to XML Syntax ==================== -->
  +  <target name="convert" depends="compile"
  +   description="Convert JSP syntax to XML syntax">
  +
  +     <java classname="org.apache.jspxml.GetWorkspaceInXML" fork="true">
  +       <classpath refid="convert.classpath"/>
  +       <sysproperty key="JSP_ROOT"
  +                  value="${watchdog.build}/webapps/jsp-tests/jsp"/>
  +       <sysproperty key="WATCHDOG_HOME"
  +                  value="${watchdog.build}"/>
  +    </java>
  +
  +  </target>
  +
  +
  +  <!-- ========================= Default Build Target ===================== -->
  +  <target name="main" depends="convert"
  +   description="Compile classes and convert JSP to XML syntax (default)"/>
  +
  +
  +  <!-- ===================== Create Binary Distribution =================== -->
  +  <target name="dist" depends="main"
  +   description="Create binary distribution">
  +
  +    <!-- Copy unmodified files -->
  +    <mkdir     dir="${watchdog.dist}"/>
  +    <copy    todir="${watchdog.dist}">
  +      <fileset dir="${watchdog.build}" excludes="webapps/**"/>
  +    </copy>
  +
  +    <!-- Create web application archives -->
  +    <mkdir     dir="${watchdog.dist}/webapps"/>
  +    <jar   jarfile="${watchdog.dist}/webapps/jsp-tests.war"
  +           basedir="${watchdog.build}/webapps/jsp-tests"/>
  +    <jar   jarfile="${watchdog.dist}/webapps/servlet-tests.war"
  +           basedir="${watchdog.build}/webapps/servlet-tests"/>
  +
  +    <!-- Create enterprise application archive -->
  +    <mkdir     dir="${watchdog.build}/tmp"/>
  +    <copy    todir="${watchdog.build}/tmp">
  +      <fileset dir="${watchdog.dist}/webapps" includes="*.war"/>
  +    </copy>
  +    <mkdir     dir="${watchdog.build}/tmp/META-INF"/>
  +    <copy    todir="${watchdog.build}/tmp/META-INF">
  +      <fileset dir="src/etc" includes="ear-dd.xml"/>
  +    </copy>
  +    <jar   jarfile="${watchdog.dist}/jcheck.ear"
  +           basedir="${watchdog.build}/tmp"/>
  +    <delete    dir="${watchdog.build}/tmp"/>
  +
  +
  +  </target>
  +
  +
  +  <!-- ====================== Clean Generated Files ======================= -->
  +  <target name="clean"
  +   description="Clean previous build results">
   
  -   <!-- Prepare the unpacked destination directory -->
  +    <delete dir="${watchdog.build}"/>
  +    <delete dir="${watchdog.dist}"/>
   
  -   <target name="prepare">
  +  </target>
   
  -      <mkdir dir="${watchdog.build}"/>
  -      <mkdir dir="${watchdog.build}/clients"/>
  -      <mkdir dir="${watchdog.build}/lib" />
  -      <mkdir dir="${watchdog.build}/lib/jsp-golden"/>
  -      <mkdir dir="${watchdog.build}/lib/servlet-golden"/>
  -      <mkdir dir="${watchdog.build}/src/tools/org/apache/tomcat/task" />
  -      <mkdir dir="${watchdog.build}/webapps/servlet-tests/WEB-INF/classes"/>
  -      <mkdir dir="${watchdog.build}/webapps/servlet-tests/WEB-INF/lib"/>
  -      <mkdir dir="${watchdog.build}/webapps/jsp-tests/WEB-INF/lib"/>
  -      <mkdir dir="${watchdog.build}/webapps/jsp-tests"/>
  -
  -      <copydir  src="src/server/jsp-tests"
  -               dest="${watchdog.build}/webapps/jsp-tests"/>
  -
  -      <copydir  src="src/server/servlet-tests"
  -               dest="${watchdog.build}/webapps/servlet-tests"/>
  -
  -      <copyfile src="${ant.home}/lib/ant.jar"
  -                dest="${watchdog.build}/lib/ant.jar"/>
  -
  -      <copyfile src="${servlet.jar}"
  -                dest="${watchdog.build}/lib/servlet.jar"/>
  -
  -
  -      <copydir  src="src/clients/org/apache/jcheck/jsp/client" 
  -                dest="${watchdog.build}/lib/jsp-golden"/>
  -
  -
  -      <copydir  src="src/clients/org/apache/jcheck/servlet/client" 
  -                dest="${watchdog.build}/lib/servlet-golden"/>
  -
  -
  -      <copydir  src="src/bin" dest="${watchdog.build}/bin"/>
  -      <fixcrlf  srcdir="${watchdog.build}/bin" includes="*.sh" cr="remove"/>
  -      <fixcrlf  srcdir="${watchdog.build}/bin" includes="*.bat" cr="add"/>
  -      <chmod       dir="${watchdog.build}/bin" includes="*.sh" perm="+x"/>
  -      <copydir  src="src/conf" dest="${watchdog.build}/conf" />
  -
  -      <copydir  src="doc" dest="${watchdog.build}/doc" />
  -      <copyfile src="Readme" 
  -               dest="${watchdog.build}/doc/Readme"/>
  -
  -
  -   </target>       
  -
  -   <!-- Compile the test suite -->
  -
  -   <target name="compile" depends="prepare">
  -
  -      <javac srcdir="src/server/servlet-tests/WEB-INF/classes"
  -             destdir="${watchdog.build}/webapps/servlet-tests/WEB-INF/classes"
  -             classpath="${watchdog-classpath}" 
  -             deprecation="off" />
  -
  -      <javac srcdir="src/server/jsp-tests/WEB-INF/classes"
  -             destdir="${watchdog.build}/webapps/jsp-tests/WEB-INF/classes"
  -             classpath="${watchdog-classpath}" 
  -             deprecation="off" />
  -
  -      <javac srcdir="src/clients" destdir="${watchdog.build}/clients" 
  -             classpath="${watchdog-classpath}" 
  -             deprecation="off" />    
  -
  -<!-- To build testdriver.jar -->
  -
  -      <javac srcdir="src/tools/org/apache/tomcat/task"
  -             destdir="${watchdog.build}/src/tools"
  -             classpath="${watchdog-classpath}" 
  -             deprecation="off"  />    
  -
  -      <javac srcdir="src/tools/org/apache/jspxml"
  -             destdir="${watchdog.build}/src/tools"
  -             classpath="${watchdog-classpath}" 
  -             deprecation="off"  />    
  -
  -      <copydir src="src/clients" dest="${watchdog.build}/clients" >
  -          <include name="**/MANIFEST.MF" />
  -          <include name="**/*.properties" />
  -      </copydir>
  -        
  -      <jar jarfile="${watchdog.build}/lib/client.jar"
  -           basedir="${watchdog.build}/clients" 
  -           includes="org/**" />
  -
  -   </target>
  -
  -   <!-- Convert the JSP syntax pages to their XML equivalents -->
  -   <target name="xml" depends="prepare,compile">
  -
  -       <java classname="org.apache.jspxml.GetWorkspaceInXML" fork="true"
  -             classpath="${watchdog-classpath}:${watchdog.build}/src/tools">
  -          <sysproperty key="JSP_ROOT" value="${watchdog.build}/webapps/jsp-tests/jsp"/>
  -          <sysproperty key="WATCHDOG_HOME" value="${watchdog.build}"/>
  -       </java>
  -
  -   </target>
  -
  -   <!-- Default build target -->
  -   <target name="main" depends="xml"/>
  -
  -   <!-- Prepare the distribution destination directory -->
  -
  -   <target name="dist" depends="main">
  -
  -      <mkdir dir="${watchdog.dist}"/>
  -      <mkdir dir="${watchdog.dist}/lib" />
  -      <mkdir dir="${watchdog.dist}/webapps" />
  -      <mkdir dir="${watchdog.dist}/lib/jsp-golden"/>
  -      <mkdir dir="${watchdog.dist}/lib/servlet-golden"/>
  -
  -      <copydir  src="doc" dest="${watchdog.dist}/doc" />
  -      <copyfile src="Readme" 
  -               dest="${watchdog.dist}/doc/Readme"/>
  -
  -
  -      <copyfile src="${ant.home}/lib/ant.jar"
  -               dest="${watchdog.dist}/lib/ant.jar"/>
  -
  -      <copyfile src="${servlet.jar}"
  -               dest="${watchdog.dist}/lib/servlet.jar"/>
  -
  -      <copydir src="src/clients/org/apache/jcheck/jsp/client" 
  -              dest="${watchdog.dist}/lib/jsp-golden"/>
  -
  -      <copydir src="src/clients/org/apache/jcheck/servlet/client" 
  -              dest="${watchdog.dist}/lib/servlet-golden"/>
  -
  -      <copydir  src="${watchdog.build}/bin" dest="${watchdog.dist}/bin"/>
  -      <fixcrlf  srcdir="${watchdog.dist}/bin" includes="*.sh" cr="remove"/>
  -      <fixcrlf  srcdir="${watchdog.dist}/bin" includes="*.bat" cr="add"/>
  -      <chmod       dir="${watchdog.dist}/bin" includes="*.sh" perm="+x"/>
  -      <copydir  src="${watchdog.build}/conf" dest="${watchdog.dist}/conf" />
  -    
  -      <jar jarfile="${watchdog.dist}/lib/client.jar"
  -        basedir="${watchdog.build}/clients" 
  -        includes="**/org/**" />
  -      
  -     <jar jarfile="${watchdog.dist}/lib/testdriver.jar"
  -        basedir="${watchdog.build}/src/tools" 
  -        includes="**/org/**" />
  -
  -      <jar jarfile="${watchdog.dist}/webapps/servlet-tests.war"
  -        basedir="${watchdog.build}/webapps/servlet-tests" 
  -        includes="**/WEB-INF/**" />
  -
  -      <jar jarfile="${watchdog.dist}/webapps/jsp-tests.war"
  -        basedir="${watchdog.build}/webapps/jsp-tests" 
  -        includes="**/WEB-INF/**,**/jsp/**" />
  -
  -      <!-- build EAR -->
  -
  -      <mkdir dir="${watchdog.build}/tmp" />
  -      <mkdir dir="${watchdog.build}/tmp/META-INF" />
  -      <copyfile src="src/etc/ear-dd.xml"
  -               dest="${watchdog.build}/tmp/META-INF/application.xml" />
  -      <copyfile src="${watchdog.dist}/webapps/servlet-tests.war" 
  -                dest="${watchdog.build}/tmp/servlet-tests.war" />
  -      <copyfile src="${watchdog.dist}/webapps/jsp-tests.war" 
  -                dest="${watchdog.build}/tmp/jsp-tests.war" />
  -      <jar jarfile="${watchdog.dist}/jcheck.ear"
  -           basedir="${watchdog.build}/tmp" >
  -         <include name="**/META-INF/**" />
  -         <include name="**/jsp-tests.war" />
  -         <include name="**/servlet-tests.war" />
  -      </jar>
  -      
  -   </target>
  -
  -   <!-- Clean out the unpacked and distribution directories -->
  -
  -   <target name="clean">
  -      <deltree dir="${watchdog.build}"/>
  -      <deltree dir="${watchdog.dist}"/>
  -   </target>
   
   </project>
  
  
  
  1.1                  jakarta-watchdog-4.0/BUILDING.txt
  
  Index: BUILDING.txt
  ===================================================================
  $Id: BUILDING.txt,v 1.1 2001/07/20 23:07:56 craigmcc Exp $
  
  
                  Building The Watchdog Validation Test Suite
                  ===========================================
  
  This subproject contains a set of tests to assist you in validating whether
  your servlet container conforms to the requirements of the Servlet 2.3 and
  JSP 1.2 specifications.  In order to build these tests from a source
  distribution, you must do the following:
  
  
  (1) Download and Install the Ant Binary Distribution
  
  NOTE:  These instructions assume that you are using the Ant 1.3 release.
  Procedures for Ant 1.4 and later versions should be similar, but have not
  been tested.
  
  * Download a binary distribution of Ant 1.3 from:
  
      http://jakarta.apache.org/builds/jakarta-ant/release/v1.3/bin/
  
    On a Windows platform, you will need:
      jakarta-ant-1.3-bin.zip
      jakarta-ant-1.3-optional.jar
  
    On a Unix platform, you will need:
      jakarta-ant-1.3-bin.tar.gz
      jakarta-ant-1.3-optional.jar
  
  * Unpack the binary distribution into a convenient location so that the
    Ant release resides in its own directory (conventionally named
    "jakarta-ant-1.3").  For the purposes of the remainder of this document,
    the symbolic name "${ant.home}" is used to refer to the full pathname of
    the release directory.
  
  * Copy the file "jakarta-ant-1.3-optional.jar", downloaded above, into
    the directory "${ant.home}/lib".  This makes available several Ant
    extension commands that are commonly required when building Jakarta
    based projects.
  
  * Modify the PATH environment variable to include directory
    "${ant.home}/bin" in its list.  This makes the "ant" command line script
    available, which will be used to actually perform the build.
  
  
  (2) Download and Install the JAXP/1.1 Reference Implementation (OPTIONAL)
  
  NOTE:  Although this step is not required to build this particular subproject,
  it is commonly required to build other Jakarta projects.  Hence, the steps
  required are documented here.
  
  * Download a binary distribution of JAXP 1.1 (Final Version) from:
  
      http://java.sun.com/xml/download.html
  
  * Unpack the binary distribution into a convenient location so that the
    JAXP/1.1 release resides in its own directory (conventionally named
    "jaxp-1.1".  For the purposes of the remainder of this document, the
    symbolic name "${jaxp.home}" is used to refer to the full pathname of
    the release directory.
  
  * Make the JAR files of this distribution ("crimson.jar", "jaxp.jar", and
    "xalan.jar") available for use by performing ONE of the following options:
  
    - Remove the existing "jaxp.jar" and "parser.jar" files found in the
      "${ant.home}/lib" directory, and copy these JAR files into the
      "${ant.home}/lib" directory (prefered option).
  
    - Add these files to your CLASSPATH environment variable.
  
  
  (3) Download and Install Subproject Source Code
  
  * Use Anonymous CVS (as described on the Jakarta web site at
    <http://jakarta.apache.org/site/cvsindex.html>, or
    download a source distribution from:
  
      http://jakarta.apache.org/builds/jakarta-watchdog-4.0/nightly/src/
  
    On a Windows platform, you will need:
      jakarta-watchdog-4.0-src-YYYYMMDD.zip
  
    On a Unix platform, you will need:
      jakarta-watchdog-4.0-src-YYYYMMDD.zip
  
  * Unpack the source distribution into a convenient location so that the
    distribution resides in its own directory (conventionally named
    "jakarta-watchdog-4.0").  For the purposes of the remainder of this document,
    the symbolic name "${watchdog.source}" is used to refer to the full
    pathname of the release directory.
  
  
  (4) Download and Install the Servlet API Binary Distribution
  
  NOTE:  Alternatively, you can download the sources of the
  "jakarta-servletapi-4" subproject, and build a binary distribution yourself.
  
  * Download a binary distribution from:
  
      http://jakarta.apache.org/builds/jakarta-servletapi-4/nightly/
  
    On a Windows platform, you will need:
      jakarta-servletapi-4-YYYYMMDD.zip
  
    On a Unix platform, you will need:
      jakarta-servletapi-4-YYYYMMDD.zip
  
  * Unpack the binary distribution into a convenient location so that the
    distribution resides in its own directory (conventionally named
    "jakarta-servletapi-4").  For the purposes of the remainder of this document,
    the symbolic name "${servletapi.home}" is used to refer to the full
    pathname of the release directory.
  
  * Make a note of the full pathname to the "servlet.jar" file included (in
    the "lib" subdirectory).  You will need it in the next step.
  
  
  (5) Customize Build Properties For This Subproject
  
  Most Jakarta subprojects allow you to customize Ant properties (with default
  values defined in the "build.xml" file.  This is done by creating a text file
  named "build.properties" in the source distribution directory (for property
  definitions local to this subproject) and/or your user home directory (for
  property definitions shared across subprojects).  You can use the included
  "build.properties.sample" file as a starting point for this.
  
  Watchdog has an external dependency on a compiled version of the Servlet and
  JSP API classes, conventionally distributed in a file named "servlet.jar".
  You can utilize such a JAR file from the "jakarta-servletapi-4"
  subproject (as described in the previous step), or use the "servlet.jar" file
  delivered with your servlet container.
  
  Create (or update) a "build.properties" file in your "${watchdog.source}"
  directory, or in your user home directory, that defines the "servlet.jar"
  property as the full pathname to this file.  For example:
  
    servlet.jar=/usr/local/jakarta-servletapi-4/lib/servlet.jar
  
  
  (6) Build A Binary Distribution
  
  Open a command line shell, and issue the following commands:
  
    cd ${watchdog.source}
    ant -projecthelp
  
  If everything is installed correctly, you should see a list of the Ant
  "targets" that represent different commands you might wish to build.  By
  convention, the "dist" target creates a complete binary distribution.  To
  execute it, type the following commands:
  
    cd ${watchdog.source}
    ant dist
  
  This will create a complete binary distribution of the subproject (equivalent
  in structure to the corresponding binary distribution downloadable from the
  Jakarta web site), in the "${watchdog.source}/dist" directory.  It will have
  the contents described in the corresponding "README.txt" file.
  
  See the document RUNNING.txt for instructions on how to run the test suite
  against your servlet container.
  
  
  
  1.1                  jakarta-watchdog-4.0/README.txt
  
  Index: README.txt
  ===================================================================
  $Id: README.txt,v 1.1 2001/07/20 23:07:56 craigmcc Exp $
  
                        Watchdog Validation Test Suite
                        ==============================
  
  This subproject contains a set of tests to assist you in validating whether
  your servlet container conforms to the requirements of the Servlet 2.3 and
  JSP 1.2 specifications.  It includes the following contents:
  
    BUILDING.txt                Instructions for building from sources
    LICENSE                     Apache Software License for this release
    README.txt                  This document
    RUNNING.txt                 Instructions for running tests on your
                                servlet container
    build.xml                   Ant script used to manage test execution
    jcheck.ear                  Test suite web applications, packaged as an
                                Enterprise Application Archive for J2EE servers
    classes/                    Client and tool classes for the test suite
    conf/                       Configuration files for the test suite
    lib/                        JAR libraries required by the test suite, and
                                "golden" files for output comparisons
    webapps/                    Web application archive (WAR) files for the
                                JSP and servlet test applications
  
  If you wish to build the Watchdog test suite from a source distribution,
  please consult the documentation in "BUILDING.txt".
  
  If you wish to run the Watchdog test suite against your servlet container,
  please consult the documentation in "RUNNING.txt".
  
  
  
  1.1                  jakarta-watchdog-4.0/RUNNING.txt
  
  Index: RUNNING.txt
  ===================================================================
  $Id: RUNNING.txt,v 1.1 2001/07/20 23:07:56 craigmcc Exp $
  
  
                  Running The Watchdog Validation Test Suite
                  ==========================================
  
  This subproject contains a set of tests to assist you in validating whether
  your servlet container conforms to the requirements of the Servlet 2.3 and
  JSP 1.2 specifications.  In order to run these tests from a binary
  distribution, you must do the following:
  
  
  (1) Download and Install the Ant Binary Distribution
  
  NOTE:  These instructions assume that you are using the Ant 1.3 release.
  Procedures for Ant 1.4 and later versions should be similar, but have not
  been tested.
  
  * Download a binary distribution of Ant 1.3 from:
  
      http://jakarta.apache.org/builds/jakarta-ant/release/v1.3/bin/
  
    On a Windows platform, you will need:
      jakarta-ant-1.3-bin.zip
      jakarta-ant-1.3-optional.jar
  
    On a Unix platform, you will need:
      jakarta-ant-1.3-bin.tar.gz
      jakarta-ant-1.3-optional.jar
  
  * Unpack the binary distribution into a convenient location so that the
    Ant release resides in its own directory (conventionally named
    "jakarta-ant-1.3").  For the purposes of the remainder of this document,
    the symbolic name "${ant.home}" is used to refer to the full pathname of
    the release directory.
  
  * Copy the file "jakarta-ant-1.3-optional.jar", downloaded above, into
    the directory "${ant.home}/lib".  This makes available several Ant
    extension commands that are commonly required when building Jakarta
    based projects.
  
  * Modify the PATH environment variable to include directory
    "${ant.home}/bin" in its list.  This makes the "ant" command line script
    available, which will be used to actually perform the build.
  
  
  (2) Download and Install the JAXP/1.1 Reference Implementation (OPTIONAL)
  
  NOTE:  Although this step is not required to build this particular subproject,
  it is commonly required to build other Jakarta projects.  Hence, the steps
  required are documented here.
  
  * Download a binary distribution of JAXP 1.1 (Final Version) from:
  
      http://java.sun.com/xml/download.html
  
  * Unpack the binary distribution into a convenient location so that the
    JAXP/1.1 release resides in its own directory (conventionally named
    "jaxp-1.1".  For the purposes of the remainder of this document, the
    symbolic name "${jaxp.home}" is used to refer to the full pathname of
    the release directory.
  
  * Make the JAR files of this distribution ("crimson.jar", "jaxp.jar", and
    "xalan.jar") available for use by performing ONE of the following options:
  
    - Remove the existing "jaxp.jar" and "parser.jar" files found in the
      "${ant.home}/lib" directory, and copy these JAR files into the
      "${ant.home}/lib" directory (prefered option).
  
    - Add these files to your CLASSPATH environment variable.
  
  
  (3) Download and Install the Watchdog Binary Distribution
  
  NOTE:  As an alternative to downloading a binary distribution, you can create
  your own from the Watchdog source repository, as described in "RUNNING.txt".
  If you do this, the value to use for "${watchdog.home}" will be the "dist"
  subdirectory of your source distribution.
  
  * Download a binary distribution of Watchdog from:
  
      http://jakarta.apache.org/builds/jakarta-watchdog-4.0/nightly/
  
    On a Windows platform, you will need:
      jakarta-watchdog-4.0-YYYYMMDD.zip
  
    On a Unix platform, you will need:
      jakarta-watchdog-4.0-YYYYMMDD.zip
  
  * Unpack the binary distribution into a convenient location so that the
    distribution resides in its own directory (conventionally named
    "jakarta-watchdog-4.0").  For the purposes of the remainder of this document,
    the symbolic name "${watchdog.home}" is used to refer to the full
    pathname of the release directory.
  
  
  (4) Install Watchdog Web Applications in your Servlet Container
  
  In the "${watchdog.home}/webapps" directory, you will find two web application
  archives (WAR) files, representing the two test applications (one for JSP pages
  and one for servlets).  Use the standard deployment tools provided by your
  container to deploy these two applications.
  
  Alternatively, if your server is compatible with Java2 Enterprise Edition
  (J2EE) requirements, you can deploy the supplied "jcheck.ear" application.
  
  
  (5) Execute the Desired Tests
  
  Open a shell window, and execute the commands:
  
    cd ${watchdog.home}
    ant -projecthelp
  
  Ant will enumerate for you the various subsets of the tests that you can run
  ("all" is the default, which will run all of the tests in the suite.  For
  example, to execute only the servlet tests, you would execute:
  
    cd ${watchdog.home}
    ant servlet
  
  The test scripts assume that your servlet container is running on server
  "localhost" at port "8080".  You can override these assumptions by including
  Ant command line parameters, like this:
  
    cd ${watchdog.home}
    ant -Dhost=www.mycompany.com -Dport=7777 jsp-all
  
  
  
  1.1                  jakarta-watchdog-4.0/doc/NewComers.README
  
  Index: NewComers.README
  ===================================================================
  The purpose of this document is to help the new comers to watchdog, get to speed quickly.Following are the things you need to know for working on watchdog.
  --------------------------------------------------------------------------
  
  1)Using CVS..how to use CVS to get the workspace from the main server and putback the new files.
  2)How Ant works i.e how to write XML files for Ant Targets.
  3)Gtest...How to write targets for running the watchdog tests.
   There is a README file in watcdog main directory that explains how to build and run the watchdog tests.Here are some important points about how to add a jsp test to the watchdog
  1)put all the jsp files in the jsp directory of under jsp-tests. You can create your own subdirectories if you want.
  2)Put all the java files (.java)  WEB-INF/classes directory of jsp-tests.Here again you can create your own subdirectories but then you have to keep these files in apropriate packages.For ex. if yoiu create a directory MyJSP and create a java file say Hello.java then Hello.java should be in package MyJsp .
  3)put all the TLD (tag library descriptor files) in WEB-INF/tlds though you are not required to do so.It's a good idea to follow this convention
  4)Golden files are expected results from these tests. Gtest compares the output of the tests with the golden files and if they don't match it says "test failed". The golden files are kept in src/clients/org/apache/jcheck/jsp for jsps and src/clients/org/apache/jcheck/servlet for servlets of the main watchdog workspace.
  
  
  
  
  
  
  1.8       +1 -1      jakarta-watchdog-4.0/src/conf/jsp-gtest.xml
  
  Index: jsp-gtest.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-watchdog-4.0/src/conf/jsp-gtest.xml,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- jsp-gtest.xml	2001/01/12 00:47:20	1.7
  +++ jsp-gtest.xml	2001/07/20 23:07:56	1.8
  @@ -4,7 +4,7 @@
      <property name="port" value="8080" />
   
      <taskdef name="gtest" classname="org.apache.tomcat.task.GTest" />
  -   <property name="wgdir" value="${watchdog.home}/lib/jsp-golden" />
  +   <property name="wgdir" value="lib/jsp-golden" />
   
      <target name="main" depends="jsp-test" />
   
  
  
  
  1.19      +2 -2      jakarta-watchdog-4.0/src/conf/servlet-gtest.xml
  
  Index: servlet-gtest.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-watchdog-4.0/src/conf/servlet-gtest.xml,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- servlet-gtest.xml	2001/04/25 22:29:20	1.18
  +++ servlet-gtest.xml	2001/07/20 23:07:56	1.19
  @@ -1,10 +1,10 @@
  -<project name="TestRun" default="main">
  +<project name="Servlet Tests" default="main">
   
      <property name="host" value="localhost" />
      <property name="port" value="8080" />
       
      <taskdef name="gtest" classname="org.apache.tomcat.task.GTest" />
  -   <property name="wgdir" value="${watchdog.home}/lib/servlet-golden" />
  +   <property name="wgdir" value="lib/servlet-golden" />
   
      <target name="main" depends="gtestservlet-test" />
   
  
  
  
  1.1                  jakarta-watchdog-4.0/src/conf/build.xml
  
  Index: build.xml
  ===================================================================
  <project name="Run Watchdog Test Suite" default="all">
  
  
    <!-- ================= Create Execution Classpath ===================== -->
  
    <path id="execute.classpath">
      <pathelement path="classes"/>
      <fileset dir="lib" includes="*.jar"/>
    </path>
  
  
    <!-- ================= Test Execution Targets ========================= -->
  
    <target name="all" depends="jsp-all,servlet"
     description="All JSP and servlet tests (Default)"/>
  
    <target name="jsp"
     description="JSP-syntax tests">
      <antcall target="execute">
        <param   name="execute.build"   value="conf/jsp-gtest.xml"/>
        <param   name="execute.target"  value="jsp-test"/>
      </antcall>
    </target>
  
    <target name="jsp-all" depends="jsp,jsp-xml"
     description="All JSP tests"/>
  
    <target name="jsp-servlet" depends="jsp,servlet"
     description="JSP-syntax and servlet tests"/>
  
    <target name="jsp-xml"
     description="XML-syntax tests">
      <antcall target="execute">
        <param   name="execute.build"   value="conf/jsp-gtest-xml.xml"/>
        <param   name="execute.target"  value="jsp-test"/>
      </antcall>
    </target>
  
    <target name="servlet"
     description="All servlet tests">
      <antcall target="execute">
        <param   name="execute.build"   value="conf/servlet-gtest.xml"/>
        <param   name="execute.target"  value="gtestservlet-test"/>
      </antcall>
    </target>
  
    <target name="xml-servlet" depends="jsp-xml,servlet"
     description="XML-syntax and servlet tests"/>
  
  
    <!-- ================ Execution Subroutine Target ====================== -->
  
    <target name="execute">
  
      <java classname="org.apache.tools.ant.Main" fork="true">
        <classpath refid="execute.classpath"/>
        <arg value="-buildfile"/>
        <arg value="${execute.build}"/>
        <arg value="${execute.target}"/>
      </java>
  
    </target>
  
  
  </project>