craigmcc    01/08/27 12:10:26

  Modified:    catalina/src/bin catalina.bat catalina.sh
               catalina/src/share/org/apache/catalina/connector/warp
                        WarpConfigurationHandler.java
               catalina/src/share/org/apache/catalina/core
                        StandardContext.java StandardHost.java
               catalina/src/share/org/apache/catalina/logger
                        FileLogger.java
               catalina/src/share/org/apache/catalina/realm
                        MemoryRealm.java
               catalina/src/share/org/apache/catalina/startup Catalina.java
                        CatalinaService.java ContextConfig.java
                        HostConfig.java
               catalina/src/share/org/apache/catalina/valves
                        AccessLogValve.java
  Log:
  Enhance Catalina startup/shutdown processing to support a new (optional)
  environment variable (CATALINA_BASE), and corresponding system property
  (catalina.base).  If not set, these values default to
  corresponding values for CATALINA_HOME and catalina.home, respectively.
  
  When you set CATALINA_BASE to point to a directory other than the one
  pointed to by CATALINA_HOME, you are changing the *default* base from
  which all references to files in the "conf", "logs", "webapps", and "work"
  directories are resolved.  This allows you to share the static portion of
  a Tomcat 4 installation (read-only) among multiple uses of that
  installation on the same server.
  
  TODO:  A pass through the docs to update them with this new information is
  coming up shortly.
  
  Submitted by:  Too numerous to count :-)
  
  Revision  Changes    Path
  1.17      +19 -6     jakarta-tomcat-4.0/catalina/src/bin/catalina.bat
  
  Index: catalina.bat
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/bin/catalina.bat,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- catalina.bat      2001/07/13 22:37:20     1.16
  +++ catalina.bat      2001/08/27 19:10:25     1.17
  @@ -4,6 +4,10 @@
   rem
   rem Environment Variable Prequisites:
   rem
  +rem   CATALINA_BASE (Optional) Base directory for resolving dynamic portions
  +rem                 of a Catalina installation.  If not present, resolves to
  +rem                 the same directory that CATALINA_HOME points to.
  +rem
   rem   CATALINA_HOME (Optional) May point at your Catalina "build" directory.
   rem                 If not present, the current working directory is assumed.
   rem
  @@ -12,12 +16,13 @@
   rem
   rem   JAVA_HOME     Must point at your Java Development Kit installation.
   rem
  -rem $Id: catalina.bat,v 1.16 2001/07/13 22:37:20 remm Exp $
  +rem $Id: catalina.bat,v 1.17 2001/08/27 19:10:25 craigmcc Exp $
   rem ---------------------------------------------------------------------------
   
   
   rem ----- Save Environment Variables That May Change --------------------------
   
  +set _CATALINA_BASE=%CATALINA_BASE%
   set _CATALINA_HOME=%CATALINA_HOME%
   set _CLASSPATH=%CLASSPATH%
   set _CP=%CP%
  @@ -41,6 +46,10 @@
   goto cleanup
   :okCatalinaHome
   
  +if not "%CATALINA_BASE%" == "" goto gotCatalinaBase
  +set CATALINA_BASE=%CATALINA_HOME%
  +:gotCatalinaBase
  +
   
   rem ----- Prepare Appropriate Java Execution Commands -------------------------
   
  @@ -57,6 +66,8 @@
   
   set CP=%CATALINA_HOME%\bin\bootstrap.jar;%JAVA_HOME%\lib\tools.jar
   set CLASSPATH=%CP%
  +echo Using CATALINA_BASE: %CATALINA_BASE%
  +echo Using CATALINA_HOME: %CATALINA_HOME%
   echo Using CLASSPATH: %CLASSPATH%
   
   
  @@ -81,23 +92,23 @@
   
   :doRun
   if "%2" == "-security" goto doRunSecure
  -%_RUNJAVA% %CATALINA_OPTS% -Dcatalina.home="%CATALINA_HOME%" 
org.apache.catalina.startup.Bootstrap %2 %3 %4 %5 %6 %7 %8 %9 start
  +%_RUNJAVA% %CATALINA_OPTS% -Dcatalina.base="%CATALINA_BASE%" 
-Dcatalina.home="%CATALINA_HOME%" org.apache.catalina.startup.Bootstrap %2 %3 %4 %5 %6 
%7 %8 %9 start
   goto cleanup
   :doRunSecure
  -%_RUNJAVA% %CATALINA_OPTS% -Djava.security.manager 
-Djava.security.policy=="%CATALINA_HOME%/conf/catalina.policy" 
-Dcatalina.home="%CATALINA_HOME%" org.apache.catalina.startup.Bootstrap %3 %4 %5 %6 %7 
%8 %9 start
  +%_RUNJAVA% %CATALINA_OPTS% -Djava.security.manager 
-Djava.security.policy=="%CATALINA_BASE%/conf/catalina.policy" 
-Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" 
org.apache.catalina.startup.Bootstrap %3 %4 %5 %6 %7 %8 %9 start
   goto cleanup
   
   :doStart
   if "%2" == "-security" goto doStartSecure
  -%_STARTJAVA% %CATALINA_OPTS% -Dcatalina.home="%CATALINA_HOME%" 
org.apache.catalina.startup.Bootstrap %2 %3 %4 %5 %6 %7 %8 %9 start
  +%_STARTJAVA% %CATALINA_OPTS% -Dcatalina.base="%CATALINA_BASE%" 
-Dcatalina.home="%CATALINA_HOME%" org.apache.catalina.startup.Bootstrap %2 %3 %4 %5 %6 
%7 %8 %9 start
   goto cleanup
   :doStartSecure
   echo Using Security Manager
  -%_STARTJAVA% %CATALINA_OPTS% -Djava.security.manager 
-Djava.security.policy=="%CATALINA_HOME%/conf/catalina.policy" 
-Dcatalina.home="%CATALINA_HOME%" org.apache.catalina.startup.Bootstrap %3 %4 %5 %6 %7 
%8 %9 start
  +%_STARTJAVA% %CATALINA_OPTS% -Djava.security.manager 
-Djava.security.policy=="%CATALINA_BASE%/conf/catalina.policy" 
-Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" 
org.apache.catalina.startup.Bootstrap %3 %4 %5 %6 %7 %8 %9 start
   goto cleanup
   
   :doStop
  -%_RUNJAVA% %CATALINA_OPTS% -Dcatalina.home="%CATALINA_HOME%" 
org.apache.catalina.startup.Bootstrap %2 %3 %4 %5 %6 %7 %8 %9 stop
  +%_RUNJAVA% %CATALINA_OPTS% -Dcatalina.base="%CATALINA_BASE%" 
-Dcatalina.home="%CATALINA_HOME%" org.apache.catalina.startup.Bootstrap %2 %3 %4 %5 %6 
%7 %8 %9 stop
   goto cleanup
   
   
  @@ -105,6 +116,8 @@
   rem ----- Restore Environment Variables ---------------------------------------
   
   :cleanup
  +set CATALINA_BASE=%_CATALINA_BASE%
  +set _CATALINA_BASE=
   set CATALINA_HOME=%_CATALINA_HOME%
   set _CATALINA_HOME=
   set CLASSPATH=%_CLASSPATH%
  
  
  
  1.17      +28 -8     jakarta-tomcat-4.0/catalina/src/bin/catalina.sh
  
  Index: catalina.sh
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/bin/catalina.sh,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- catalina.sh       2001/08/24 19:08:15     1.16
  +++ catalina.sh       2001/08/27 19:10:25     1.17
  @@ -4,6 +4,10 @@
   #
   # Environment Variable Prequisites
   #
  +#   CATALINA_BASE (Optional) Base directory for resolving dynamic portions
  +#                 of a Catalina installation.  If not present, resolves to
  +#                 the same directory that CATALINA_HOME points to.
  +#
   #   CATALINA_HOME (Optional) May point at your Catalina "build" directory.
   #                 If not present, the current working directory is assumed.
   #
  @@ -16,7 +20,7 @@
   #                 command is executed.  Defaults to
   #                 "-classic -Xdebug -Xnoagent 
-Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"
   #
  -# $Id: catalina.sh,v 1.16 2001/08/24 19:08:15 craigmcc Exp $
  +# $Id: catalina.sh,v 1.17 2001/08/27 19:10:25 craigmcc Exp $
   # -----------------------------------------------------------------------------
   
   
  @@ -72,7 +76,13 @@
      CATALINA_HOME=`cygpath --path --windows "$CATALINA_HOME"`
   fi
   
  +# copy to CATALINA_BASE if necessary
  +if [ -z "$CATALINA_BASE" ] ; then
  +  CATALINA_BASE=$CATALINA_HOME
  +fi
  +
   echo "Using CLASSPATH: $CP"
  +echo "Using CATALINA_BASE: $CATALINA_BASE"
   echo "Using CATALINA_HOME: $CATALINA_HOME"
   
   
  @@ -92,13 +102,17 @@
       $JAVA_HOME/bin/jdb \
          $CATALINA_OPTS \
          -sourcepath ../../jakarta-tomcat-4.0/catalina/src/share \
  -       -classpath $CP -Dcatalina.home=$CATALINA_HOME \
  +       -classpath $CP \
  +       -Dcatalina.base=$CATALINA_BASE \
  +       -Dcatalina.home=$CATALINA_HOME \
          org.apache.catalina.startup.Bootstrap "$@" start
     else
       $JAVA_HOME/bin/jdb \
          $CATALINA_OPTS \
          -sourcepath ../../jakarta-tomcat-4.0/catalina/src/share \
  -       -classpath $CP -Dcatalina.home=$CATALINA_HOME \
  +       -classpath $CP \
  +       -Dcatalina.base=$CATALINA_BASE \
  +       -Dcatalina.home=$CATALINA_HOME \
          org.apache.catalina.startup.Bootstrap "$@" start
     fi
     popd
  @@ -114,6 +128,7 @@
     done
     echo Embedded Classpath: $CP
     $JAVA_HOME/bin/java $CATALINA_OPTS -classpath $CP \
  +   -Dcatalina.base=$CATALINA_BASE \
      -Dcatalina.home=$CATALINA_HOME \
      org.apache.catalina.startup.Embedded "$@"
   
  @@ -130,11 +145,13 @@
       shift
       $JAVA_HOME/bin/java $CATALINA_OPTS -classpath $CP \
        -Djava.security.manager \
  -     -Djava.security.policy==$CATALINA_HOME/conf/catalina.policy \
  +     -Djava.security.policy==$CATALINA_BASE/conf/catalina.policy \
  +     -Dcatalina.base=$CATALINA_BASE \
        -Dcatalina.home=$CATALINA_HOME \
        org.apache.catalina.startup.Bootstrap "$@" start
     else
       $JAVA_HOME/bin/java $CATALINA_OPTS -classpath $CP \
  +     -Dcatalina.base=$CATALINA_BASE \
        -Dcatalina.home=$CATALINA_HOME \
        org.apache.catalina.startup.Bootstrap "$@" start
     fi
  @@ -142,27 +159,30 @@
   elif [ "$1" = "start" ] ; then
   
     shift
  -  touch $CATALINA_HOME/logs/catalina.out
  +  touch $CATALINA_BASE/logs/catalina.out
     if [ "$1" = "-security" ] ; then
       echo Using Security Manager
       shift
       $JAVA_HOME/bin/java $CATALINA_OPTS -classpath $CP \
        -Djava.security.manager \
  -     -Djava.security.policy==$CATALINA_HOME/conf/catalina.policy \
  +     -Djava.security.policy==$CATALINA_BASE/conf/catalina.policy \
  +     -Dcatalina.base=$CATALINA_BASE \
        -Dcatalina.home=$CATALINA_HOME \
        org.apache.catalina.startup.Bootstrap "$@" start \
  -     >> $CATALINA_HOME/logs/catalina.out 2>&1 &
  +     >> $CATALINA_BASE/logs/catalina.out 2>&1 &
     else
       $JAVA_HOME/bin/java $CATALINA_OPTS -classpath $CP \
  +     -Dcatalina.base=$CATALINA_BASE \
        -Dcatalina.home=$CATALINA_HOME \
        org.apache.catalina.startup.Bootstrap "$@" start \
  -     >> $CATALINA_HOME/logs/catalina.out 2>&1 &
  +     >> $CATALINA_BASE/logs/catalina.out 2>&1 &
     fi
   
   elif [ "$1" = "stop" ] ; then
   
     shift
     $JAVA_HOME/bin/java $CATALINA_OPTS -classpath $CP \
  +   -Dcatalina.base=$CATALINA_BASE \
      -Dcatalina.home=$CATALINA_HOME \
      org.apache.catalina.startup.Bootstrap "$@" stop
   
  
  
  
  1.5       +1 -1      
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/warp/WarpConfigurationHandler.java
  
  Index: WarpConfigurationHandler.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/warp/WarpConfigurationHandler.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- WarpConfigurationHandler.java     2001/08/10 00:58:53     1.4
  +++ WarpConfigurationHandler.java     2001/08/27 19:10:25     1.5
  @@ -288,7 +288,7 @@
               Deployer deployer=(Deployer)host;
               File file=new File(host.getAppBase()+File.separator+applName);
               if (!file.isAbsolute()) {
  -                file=new File(System.getProperty("catalina.home"),
  +                file=new File(System.getProperty("catalina.base"),
                                 host.getAppBase()+File.separator+applName);
               }
   
  
  
  
  1.74      +6 -6      
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core/StandardContext.java
  
  Index: StandardContext.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core/StandardContext.java,v
  retrieving revision 1.73
  retrieving revision 1.74
  diff -u -r1.73 -r1.74
  --- StandardContext.java      2001/07/29 04:34:17     1.73
  +++ StandardContext.java      2001/08/27 19:10:25     1.74
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core/StandardContext.java,v
 1.73 2001/07/29 04:34:17 craigmcc Exp $
  - * $Revision: 1.73 $
  - * $Date: 2001/07/29 04:34:17 $
  + * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core/StandardContext.java,v
 1.74 2001/08/27 19:10:25 craigmcc Exp $
  + * $Revision: 1.74 $
  + * $Date: 2001/08/27 19:10:25 $
    *
    * ====================================================================
    *
  @@ -142,7 +142,7 @@
    *
    * @author Craig R. McClanahan
    * @author Remy Maucherat
  - * @version $Revision: 1.73 $ $Date: 2001/07/29 04:34:17 $
  + * @version $Revision: 1.74 $ $Date: 2001/08/27 19:10:25 $
    */
   
   public class StandardContext
  @@ -3490,7 +3490,7 @@
        */
       protected File engineBase() {
   
  -        return (new File(System.getProperty("catalina.home")));
  +        return (new File(System.getProperty("catalina.base")));
   
       }
   
  @@ -3864,7 +3864,7 @@
           // Create this directory if necessary
           File dir = new File(workDir);
           if (!dir.isAbsolute()) {
  -            File catalinaHome = new File(System.getProperty("catalina.home"));
  +            File catalinaHome = new File(System.getProperty("catalina.base"));
               String catalinaHomePath = null;
               try {
                   catalinaHomePath = catalinaHome.getCanonicalPath();
  
  
  
  1.18      +5 -5      
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core/StandardHost.java
  
  Index: StandardHost.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core/StandardHost.java,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- StandardHost.java 2001/07/29 04:34:17     1.17
  +++ StandardHost.java 2001/08/27 19:10:25     1.18
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core/StandardHost.java,v
 1.17 2001/07/29 04:34:17 craigmcc Exp $
  - * $Revision: 1.17 $
  - * $Date: 2001/07/29 04:34:17 $
  + * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core/StandardHost.java,v
 1.18 2001/08/27 19:10:25 craigmcc Exp $
  + * $Revision: 1.18 $
  + * $Date: 2001/08/27 19:10:25 $
    *
    * ====================================================================
    *
  @@ -100,7 +100,7 @@
    * requests directed to a particular web application.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.17 $ $Date: 2001/07/29 04:34:17 $
  + * @version $Revision: 1.18 $ $Date: 2001/08/27 19:10:25 $
    */
   
   public class StandardHost
  @@ -849,7 +849,7 @@
           // Make sure that there is no such directory already existing
           File appBase = new File(getAppBase());
           if (!appBase.isAbsolute())
  -            appBase = new File(System.getProperty("catalina.home"),
  +            appBase = new File(System.getProperty("catalina.base"),
                                  getAppBase());
           if (!appBase.exists() || !appBase.isDirectory())
               throw new IOException
  
  
  
  1.3       +5 -6      
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/logger/FileLogger.java
  
  Index: FileLogger.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/logger/FileLogger.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- FileLogger.java   2001/07/22 20:25:11     1.2
  +++ FileLogger.java   2001/08/27 19:10:25     1.3
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/logger/FileLogger.java,v
 1.2 2001/07/22 20:25:11 pier Exp $
  - * $Revision: 1.2 $
  - * $Date: 2001/07/22 20:25:11 $
  + * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/logger/FileLogger.java,v
 1.3 2001/08/27 19:10:25 craigmcc Exp $
  + * $Revision: 1.3 $
  + * $Date: 2001/08/27 19:10:25 $
    *
    * ====================================================================
    *
  @@ -84,7 +84,7 @@
    * optional preceding timestamp.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.2 $ $Date: 2001/07/22 20:25:11 $
  + * @version $Revision: 1.3 $ $Date: 2001/08/27 19:10:25 $
    */
   
   public final class FileLogger
  @@ -323,8 +323,7 @@
           // Create the directory if necessary
           File dir = new File(directory);
           if (!dir.isAbsolute())
  -            dir = new File(System.getProperty("catalina.home") +
  -                           File.separator + directory);
  +            dir = new File(System.getProperty("catalina.base"), directory);
           dir.mkdirs();
   
           // Open the current log file
  
  
  
  1.7       +6 -7      
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/realm/MemoryRealm.java
  
  Index: MemoryRealm.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/realm/MemoryRealm.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- MemoryRealm.java  2001/07/22 20:25:11     1.6
  +++ MemoryRealm.java  2001/08/27 19:10:25     1.7
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/realm/MemoryRealm.java,v
 1.6 2001/07/22 20:25:11 pier Exp $
  - * $Revision: 1.6 $
  - * $Date: 2001/07/22 20:25:11 $
  + * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/realm/MemoryRealm.java,v
 1.7 2001/08/27 19:10:25 craigmcc Exp $
  + * $Revision: 1.7 $
  + * $Date: 2001/08/27 19:10:25 $
    *
    * ====================================================================
    *
  @@ -95,7 +95,7 @@
    * synchronization is performed around accesses to the principals collection.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.6 $ $Date: 2001/07/22 20:25:11 $
  + * @version $Revision: 1.7 $ $Date: 2001/08/27 19:10:25 $
    */
   
   public final class MemoryRealm
  @@ -178,7 +178,7 @@
   
       /**
        * Set the pathname of our XML file containing user definitions.  If a
  -     * relative pathname is specified, it is resolved against "catalina.home".
  +     * relative pathname is specified, it is resolved against "catalina.base".
        *
        * @param pathname The new pathname
        */
  @@ -305,8 +305,7 @@
           // Validate the existence of our database file
           File file = new File(pathname);
           if (!file.isAbsolute())
  -            file = new File(System.getProperty("catalina.home") +
  -                            File.separator + pathname);
  +            file = new File(System.getProperty("catalina.base"), pathname);
           if (!file.exists() || !file.canRead())
               throw new LifecycleException
                   (sm.getString("memoryRealm.loadExist",
  
  
  
  1.30      +21 -7     
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/Catalina.java
  
  Index: Catalina.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/Catalina.java,v
  retrieving revision 1.29
  retrieving revision 1.30
  diff -u -r1.29 -r1.30
  --- Catalina.java     2001/07/22 20:25:13     1.29
  +++ Catalina.java     2001/08/27 19:10:25     1.30
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/Catalina.java,v
 1.29 2001/07/22 20:25:13 pier Exp $
  - * $Revision: 1.29 $
  - * $Date: 2001/07/22 20:25:13 $
  + * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/Catalina.java,v
 1.30 2001/08/27 19:10:25 craigmcc Exp $
  + * $Revision: 1.30 $
  + * $Date: 2001/08/27 19:10:25 $
    *
    * ====================================================================
    *
  @@ -92,13 +92,13 @@
    * <li><b>-config {pathname}</b> - Set the pathname of the configuration file
    *     to be processed.  If a relative path is specified, it will be
    *     interpreted as relative to the directory pathname specified by the
  - *     "catalina.home" system property.   [conf/server.xml]
  + *     "catalina.base" system property.   [conf/server.xml]
    * <li><b>-help</b> - Display usage information.
    * <li><b>-stop</b> - Stop the currently running instance of Catalina.
    * </u>
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.29 $ $Date: 2001/07/22 20:25:13 $
  + * @version $Revision: 1.30 $ $Date: 2001/08/27 19:10:25 $
    */
   
   public class Catalina {
  @@ -172,6 +172,7 @@
        */
       public void process(String args[]) {
   
  +        setCatalinaBase();
           setCatalinaHome();
           try {
               if (arguments(args))
  @@ -264,8 +265,7 @@
   
           File file = new File(configFile);
           if (!file.isAbsolute())
  -            file = new File(System.getProperty("catalina.home") +
  -                            File.separator + configFile);
  +            file = new File(System.getProperty("catalina.base"), configFile);
           return (file);
   
       }
  @@ -657,6 +657,20 @@
               start();
           else if (stopping)
               stop();
  +
  +    }
  +
  +
  +    /**
  +     * Set the <code>catalina.base</code> System property to the current
  +     * working directory if it has not been set.
  +     */
  +    protected void setCatalinaBase() {
  +
  +        if (System.getProperty("catalina.base") != null)
  +            return;
  +        System.setProperty("catalina.base",
  +                           System.getProperty("user.dir"));
   
       }
   
  
  
  
  1.4       +5 -5      
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/CatalinaService.java
  
  Index: CatalinaService.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/CatalinaService.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- CatalinaService.java      2001/07/23 03:12:45     1.3
  +++ CatalinaService.java      2001/08/27 19:10:25     1.4
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/CatalinaService.java,v
 1.3 2001/07/23 03:12:45 remm Exp $
  - * $Revision: 1.3 $
  - * $Date: 2001/07/23 03:12:45 $
  + * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/CatalinaService.java,v
 1.4 2001/08/27 19:10:25 craigmcc Exp $
  + * $Revision: 1.4 $
  + * $Date: 2001/08/27 19:10:25 $
    *
    * ====================================================================
    *
  @@ -92,7 +92,7 @@
    * <li><b>-config {pathname}</b> - Set the pathname of the configuration file
    *     to be processed.  If a relative path is specified, it will be
    *     interpreted as relative to the directory pathname specified by the
  - *     "catalina.home" system property.   [conf/server.xml]
  + *     "catalina.base" system property.   [conf/server.xml]
    * <li><b>-help</b> - Display usage information.
    * <li><b>-stop</b> - Stop the currently running instance of Catalina.
    * </ul>
  @@ -104,7 +104,7 @@
    *
    * @author Craig R. McClanahan
    * @author Remy Maucherat
  - * @version $Revision: 1.3 $ $Date: 2001/07/23 03:12:45 $
  + * @version $Revision: 1.4 $ $Date: 2001/08/27 19:10:25 $
    */
   
   public class CatalinaService extends Catalina {
  
  
  
  1.51      +6 -6      
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/ContextConfig.java
  
  Index: ContextConfig.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/ContextConfig.java,v
  retrieving revision 1.50
  retrieving revision 1.51
  diff -u -r1.50 -r1.51
  --- ContextConfig.java        2001/07/29 04:34:17     1.50
  +++ ContextConfig.java        2001/08/27 19:10:25     1.51
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/ContextConfig.java,v
 1.50 2001/07/29 04:34:17 craigmcc Exp $
  - * $Revision: 1.50 $
  - * $Date: 2001/07/29 04:34:17 $
  + * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/ContextConfig.java,v
 1.51 2001/08/27 19:10:25 craigmcc Exp $
  + * $Revision: 1.51 $
  + * $Date: 2001/08/27 19:10:25 $
    *
    * ====================================================================
    *
  @@ -128,7 +128,7 @@
    * of that Context, and the associated defined servlets.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.50 $ $Date: 2001/07/29 04:34:17 $
  + * @version $Revision: 1.51 $ $Date: 2001/08/27 19:10:25 $
    */
   
   public final class ContextConfig
  @@ -709,8 +709,8 @@
           // Open the default web.xml file, if it exists
           File file = new File(Constants.DefaultWebXml);
           if (!file.isAbsolute())
  -            file = new File(System.getProperty("catalina.home") +
  -                            File.separator + Constants.DefaultWebXml);
  +            file = new File(System.getProperty("catalina.base"),
  +                            Constants.DefaultWebXml);
           FileInputStream stream = null;
           try {
               stream = new FileInputStream(file.getCanonicalPath());
  
  
  
  1.9       +5 -5      
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/HostConfig.java
  
  Index: HostConfig.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/HostConfig.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- HostConfig.java   2001/07/22 20:25:13     1.8
  +++ HostConfig.java   2001/08/27 19:10:25     1.9
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/HostConfig.java,v
 1.8 2001/07/22 20:25:13 pier Exp $
  - * $Revision: 1.8 $
  - * $Date: 2001/07/22 20:25:13 $
  + * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/HostConfig.java,v
 1.9 2001/08/27 19:10:25 craigmcc Exp $
  + * $Revision: 1.9 $
  + * $Date: 2001/08/27 19:10:25 $
    *
    * ====================================================================
    *
  @@ -94,7 +94,7 @@
    * of that Host, and the associated defined contexts.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.8 $ $Date: 2001/07/22 20:25:13 $
  + * @version $Revision: 1.9 $ $Date: 2001/08/27 19:10:25 $
    */
   
   public final class HostConfig
  @@ -247,7 +247,7 @@
   
           File file = new File(host.getAppBase());
           if (!file.isAbsolute())
  -            file = new File(System.getProperty("catalina.home"),
  +            file = new File(System.getProperty("catalina.base"),
                               host.getAppBase());
           return (file);
   
  
  
  
  1.10      +2 -3      
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/valves/AccessLogValve.java
  
  Index: AccessLogValve.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/valves/AccessLogValve.java,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- AccessLogValve.java       2001/08/06 19:21:55     1.9
  +++ AccessLogValve.java       2001/08/27 19:10:26     1.10
  @@ -128,7 +128,7 @@
    *
    * @author Craig R. McClanahan
    * @author Jason Brittain
  - * @version $Revision: 1.9 $ $Date: 2001/08/06 19:21:55 $
  + * @version $Revision: 1.10 $ $Date: 2001/08/27 19:10:26 $
    */
   
   public final class AccessLogValve
  @@ -646,8 +646,7 @@
           // Create the directory if necessary
           File dir = new File(directory);
           if (!dir.isAbsolute())
  -            dir = new File(System.getProperty("catalina.home") +
  -                           File.separator + directory);
  +            dir = new File(System.getProperty("catalina.base"), directory);
           dir.mkdirs();
   
           // Open the current log file
  
  
  

Reply via email to