patrickl    02/03/31 16:13:23

  Modified:    catalina/src/bin catalina.bat catalina.sh setclasspath.bat
                        setclasspath.sh tool-wrapper.bat tool-wrapper.sh
               catalina/src/share/org/apache/catalina/startup
                        Bootstrap.java Tool.java
               jasper/src/bin jasper.bat jasper.sh
  Log:
  Put jar files installed in the JDK's jre/lib/ext directory after the jar files and 
classes bundled with Tomcat. This is done by setting the "java.ext.dirs" property to a 
zero length string and by put the JDK's jre/lib/ext directory in Tomcat's class 
loader. This also fixes the problem that used to happen when you had the JSSE jars 
installed as a system extension and you had JSSE_HOME set.
  
  Revision  Changes    Path
  1.28      +9 -9      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.27
  retrieving revision 1.28
  diff -u -r1.27 -r1.28
  --- catalina.bat      19 Mar 2002 18:10:56 -0000      1.27
  +++ catalina.bat      1 Apr 2002 00:13:23 -0000       1.28
  @@ -28,12 +28,12 @@
   rem                   system class path used to start Tomcat.
   rem
   rem   JPDA_TRANSPORT  (Optional) JPDA transport used when the "jpda start"
  -rem                   command is executed. The default is "dt_shmem".
  +rem                   command is executed. The default is "dt_socket".
   rem
   rem   JPDA_ADDRESS    (Optional) Java runtime options used when the "jpda start"
  -rem                   command is executed. The default is "jdbconn".
  +rem                   command is executed. The default is "8000".
   rem
  -rem $Id: catalina.bat,v 1.27 2002/03/19 18:10:56 patrickl Exp $
  +rem $Id: catalina.bat,v 1.28 2002/04/01 00:13:23 patrickl Exp $
   rem ---------------------------------------------------------------------------
   
   rem Guess CATALINA_HOME if not defined
  @@ -91,10 +91,10 @@
   if not ""%1"" == ""jpda"" goto noJpda
   set JPDA=jpda
   if not "%JPDA_TRANSPORT%" == "" goto gotJpdaTransport
  -set JPDA_TRANSPORT=dt_shmem
  +set JPDA_TRANSPORT=dt_socket
   :gotJpdaTransport
   if not "%JPDA_ADDRESS%" == "" goto gotJpdaAddress
  -set JPDA_ADDRESS=jdbconn
  +set JPDA_ADDRESS=8000
   :gotJpdaAddress
   shift
   :noJpda
  @@ -173,17 +173,17 @@
   rem Execute Java with the applicable properties
   if not "%JPDA%" == "" goto doJpda
   if not "%SECURITY_POLICY_FILE%" == "" goto doSecurity
  -%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% 
-Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" 
-Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" 
-Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION%
  +%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% 
-Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -Djava.ext.dirs="%JAVA_EXT_DIRS%" 
-classpath "%CLASSPATH%" -Dcatalina.base="%CATALINA_BASE%" 
-Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% 
%CMD_LINE_ARGS% %ACTION%
   goto end
   :doSecurity
  -%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% 
-Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" 
-Djava.security.manager -Djava.security.policy=="%SECURITY_POLICY_FILE%" 
-Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" 
-Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION%
  +%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% 
-Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -Djava.ext.dirs="%JAVA_EXT_DIRS%" 
-classpath "%CLASSPATH%" -Djava.security.manager 
-Djava.security.policy=="%SECURITY_POLICY_FILE%" -Dcatalina.base="%CATALINA_BASE%" 
-Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% 
%CMD_LINE_ARGS% %ACTION%
   goto end
   :doJpda
   if not "%SECURITY_POLICY_FILE%" == "" goto doSecurityJpda
  -%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% -Xdebug 
-Xrunjdwp:transport=%JPDA_TRANSPORT%,address=%JPDA_ADDRESS%,server=y,suspend=n 
%DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" 
-Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" 
-Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION%
  +%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% -Xdebug 
-Xrunjdwp:transport=%JPDA_TRANSPORT%,address=%JPDA_ADDRESS%,server=y,suspend=n 
%DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" 
-Djava.ext.dirs="%JAVA_EXT_DIRS%" -classpath "%CLASSPATH%" 
-Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" 
-Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION%
   goto end
   :doSecurityJpda
  -%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% 
-Xrunjdwp:transport=%JPDA_TRANSPORT%,address=%JPDA_ADDRESS%,server=y,suspend=n 
%DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" 
-Djava.security.manager -Djava.security.policy=="%SECURITY_POLICY_FILE%" 
-Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" 
-Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION%
  +%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% 
-Xrunjdwp:transport=%JPDA_TRANSPORT%,address=%JPDA_ADDRESS%,server=y,suspend=n 
%DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" 
-Djava.ext.dirs="%JAVA_EXT_DIRS%" -classpath "%CLASSPATH%" -Djava.security.manager 
-Djava.security.policy=="%SECURITY_POLICY_FILE%" -Dcatalina.base="%CATALINA_BASE%" 
-Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% 
%CMD_LINE_ARGS% %ACTION%
   goto end
   
   :end
  
  
  
  1.29      +17 -9     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.28
  retrieving revision 1.29
  diff -u -r1.28 -r1.29
  --- catalina.sh       19 Mar 2002 18:21:14 -0000      1.28
  +++ catalina.sh       1 Apr 2002 00:13:23 -0000       1.29
  @@ -32,7 +32,7 @@
   #                   (JSSE) installation, whose JAR files will be added to the
   #                   system class path used to start Tomcat.
   #
  -# $Id: catalina.sh,v 1.28 2002/03/19 18:21:14 patrickl Exp $
  +# $Id: catalina.sh,v 1.29 2002/04/01 00:13:23 patrickl Exp $
   # -----------------------------------------------------------------------------
   
   # OS specific support.  $var _must_ be set to either true or false.
  @@ -130,7 +130,8 @@
       echo "Using Security Manager"
       shift
       exec "$_RUNJDB" $JAVA_OPTS $CATALINA_OPTS \
  -      -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \
  +      -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" \
  +      -Djava.ext.dirs="$JAVA_EXT_DIRS" -classpath "$CLASSPATH" \
         -sourcepath "$CATALINA_HOME"/../../jakarta-tomcat-4.0/catalina/src/share \
         -Djava.security.manager \
         -Djava.security.policy=="$CATALINA_BASE"/conf/catalina.policy \
  @@ -140,7 +141,8 @@
         org.apache.catalina.startup.Bootstrap "$@" start
     else
       exec "$_RUNJDB" $JAVA_OPTS $CATALINA_OPTS \
  -      -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \
  +      -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" \
  +      -Djava.ext.dirs="$JAVA_EXT_DIRS" -classpath "$CLASSPATH" \
         -sourcepath "$CATALINA_HOME"/../../jakarta-tomcat-4.0/catalina/src/share \
         -Dcatalina.base="$CATALINA_BASE" \
         -Dcatalina.home="$CATALINA_HOME" \
  @@ -153,7 +155,8 @@
     shift
     echo "Embedded Classpath: $CLASSPATH"
     exec "$_RUNJAVA" $JAVA_OPTS $CATALINA_OPTS \
  -    -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \
  +    -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" \
  +    -Djava.ext.dirs="$JAVA_EXT_DIRS" -classpath "$CLASSPATH" \
       -Dcatalina.base="$CATALINA_BASE" \
       -Dcatalina.home="$CATALINA_HOME" \
       -Djava.io.tmpdir="$CATALINA_TMPDIR" \
  @@ -166,7 +169,8 @@
       echo "Using Security Manager"
       shift
       exec "$_RUNJAVA" $JAVA_OPTS $CATALINA_OPTS \
  -      -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \
  +      -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" \
  +      -Djava.ext.dirs="$JAVA_EXT_DIRS" -classpath "$CLASSPATH" \
         -Djava.security.manager \
         -Djava.security.policy=="$CATALINA_BASE"/conf/catalina.policy \
         -Dcatalina.base="$CATALINA_BASE" \
  @@ -175,7 +179,8 @@
         org.apache.catalina.startup.Bootstrap "$@" start
     else
       exec "$_RUNJAVA" $JAVA_OPTS $CATALINA_OPTS \
  -      -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \
  +      -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" \
  +      -Djava.ext.dirs="$JAVA_EXT_DIRS" -classpath "$CLASSPATH" \
         -Dcatalina.base="$CATALINA_BASE" \
         -Dcatalina.home="$CATALINA_HOME" \
         -Djava.io.tmpdir="$CATALINA_TMPDIR" \
  @@ -190,7 +195,8 @@
       echo "Using Security Manager"
       shift
       "$_RUNJAVA" $JAVA_OPTS $CATALINA_OPTS \
  -      -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \
  +      -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" \
  +      -Djava.ext.dirs="$JAVA_EXT_DIRS" -classpath "$CLASSPATH" \
         -Djava.security.manager \
         -Djava.security.policy=="$CATALINA_BASE"/conf/catalina.policy \
         -Dcatalina.base="$CATALINA_BASE" \
  @@ -200,7 +206,8 @@
         >> "$CATALINA_BASE"/logs/catalina.out 2>&1 &
     else
       "$_RUNJAVA" $JAVA_OPTS $CATALINA_OPTS \
  -      -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \
  +      -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" \
  +      -Djava.ext.dirs="$JAVA_EXT_DIRS" -classpath "$CLASSPATH" \
         -Dcatalina.base="$CATALINA_BASE" \
         -Dcatalina.home="$CATALINA_HOME" \
         -Djava.io.tmpdir="$CATALINA_TMPDIR" \
  @@ -212,7 +219,8 @@
   
     shift
     exec "$_RUNJAVA" $JAVA_OPTS $CATALINA_OPTS \
  -    -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \
  +    -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" \
  +    -Djava.ext.dirs="$JAVA_EXT_DIRS" -classpath "$CLASSPATH" \
       -Dcatalina.base="$CATALINA_BASE" \
       -Dcatalina.home="$CATALINA_HOME" \
       -Djava.io.tmpdir="$CATALINA_TMPDIR" \
  
  
  
  1.6       +5 -2      jakarta-tomcat-4.0/catalina/src/bin/setclasspath.bat
  
  Index: setclasspath.bat
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/bin/setclasspath.bat,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- setclasspath.bat  30 Mar 2002 23:50:43 -0000      1.5
  +++ setclasspath.bat  1 Apr 2002 00:13:23 -0000       1.6
  @@ -1,7 +1,7 @@
   rem ---------------------------------------------------------------------------
   rem Set CLASSPATH and Java options
   rem
  -rem $Id: setclasspath.bat,v 1.5 2002/03/30 23:50:43 patrickl Exp $
  +rem $Id: setclasspath.bat,v 1.6 2002/04/01 00:13:23 patrickl Exp $
   rem ---------------------------------------------------------------------------
   
   rem Make sure prerequisite environment variables are set
  @@ -33,7 +33,10 @@
   :okBasedir
   
   rem Set the default -Djava.endorsed.dirs argument
  -set JAVA_ENDORSED_DIRS=%BASEDIR%\bin;%BASEDIR%\common\endorsed
  +set JAVA_ENDORSED_DIRS=%BASEDIR%\common\endorsed
  +
  +rem Set the default -Djava.ext.dirs argument
  +set JAVA_EXT_DIRS=
   
   rem Set standard CLASSPATH
   rem Note that there are no quotes as we do not want to introduce random
  
  
  
  1.6       +5 -2      jakarta-tomcat-4.0/catalina/src/bin/setclasspath.sh
  
  Index: setclasspath.sh
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/bin/setclasspath.sh,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- setclasspath.sh   30 Mar 2002 23:50:43 -0000      1.5
  +++ setclasspath.sh   1 Apr 2002 00:13:23 -0000       1.6
  @@ -1,7 +1,7 @@
   # -----------------------------------------------------------------------------
   #  Set CLASSPATH and Java options
   #
  -#  $Id: setclasspath.sh,v 1.5 2002/03/30 23:50:43 patrickl Exp $
  +#  $Id: setclasspath.sh,v 1.6 2002/04/01 00:13:23 patrickl Exp $
   # -----------------------------------------------------------------------------
   
   # Make sure prerequisite environment variables are set
  @@ -27,7 +27,10 @@
   fi
   
   # Set the default -Djava.endorsed.dirs argument
  -JAVA_ENDORSED_DIRS="$BASEDIR"/bin:"$BASEDIR"/common/endorsed
  +JAVA_ENDORSED_DIRS="$BASEDIR"/common/endorsed
  +
  +# Set the default -Djava.ext.dirs argument
  +JAVA_EXT_DIRS=
   
   # Set standard CLASSPATH
   CLASSPATH="$JAVA_HOME"/lib/tools.jar
  
  
  
  1.4       +2 -2      jakarta-tomcat-4.0/catalina/src/bin/tool-wrapper.bat
  
  Index: tool-wrapper.bat
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/bin/tool-wrapper.bat,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- tool-wrapper.bat  15 Jan 2002 02:55:38 -0000      1.3
  +++ tool-wrapper.bat  1 Apr 2002 00:13:23 -0000       1.4
  @@ -15,7 +15,7 @@
   rem   JAVA_OPTS     (Optional) Java runtime options used when the "start",
   rem                 "stop", or "run" command is executed.
   rem
  -rem $Id: tool-wrapper.bat,v 1.3 2002/01/15 02:55:38 patrickl Exp $
  +rem $Id: tool-wrapper.bat,v 1.4 2002/04/01 00:13:23 patrickl Exp $
   rem ---------------------------------------------------------------------------
   
   rem Guess CATALINA_HOME if not defined
  @@ -54,6 +54,6 @@
   goto setArgs
   :doneSetArgs
   
  -%_RUNJAVA% %JAVA_OPTS% %TOOL_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" 
-classpath "%CLASSPATH%" -Dcatalina.home="%CATALINA_HOME%" 
org.apache.catalina.startup.Tool %CMD_LINE_ARGS%
  +%_RUNJAVA% %JAVA_OPTS% %TOOL_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" 
-Djava.ext.dirs="%JAVA_EXT_DIRS%" -classpath "%CLASSPATH%" 
-Dcatalina.home="%CATALINA_HOME%" org.apache.catalina.startup.Tool %CMD_LINE_ARGS%
   
   :end
  
  
  
  1.5       +3 -3      jakarta-tomcat-4.0/catalina/src/bin/tool-wrapper.sh
  
  Index: tool-wrapper.sh
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/bin/tool-wrapper.sh,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- tool-wrapper.sh   15 Jan 2002 02:55:38 -0000      1.4
  +++ tool-wrapper.sh   1 Apr 2002 00:13:23 -0000       1.5
  @@ -14,7 +14,7 @@
   #   JAVA_OPTS     (Optional) Java runtime options used when the "start",
   #                 "stop", or "run" command is executed.
   #
  -# $Id: tool-wrapper.sh,v 1.4 2002/01/15 02:55:38 patrickl Exp $
  +# $Id: tool-wrapper.sh,v 1.5 2002/04/01 00:13:23 patrickl Exp $
   # -----------------------------------------------------------------------------
   
   # OS specific support.  $var _must_ be set to either true or false.
  @@ -73,6 +73,6 @@
   # ----- Execute The Requested Command -----------------------------------------
   
   exec "$_RUNJAVA" $JAVA_OPTS $TOOL_OPTS \
  -  -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \
  -  -Dcatalina.home="$CATALINA_HOME" \
  +  -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -Djava.ext.dirs="$JAVA_EXT_DIRS" \
  +  -classpath "$CLASSPATH" -Dcatalina.home="$CATALINA_HOME" \
     org.apache.catalina.startup.Tool "$@"
  
  
  
  1.35      +22 -5     
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/Bootstrap.java
  
  Index: Bootstrap.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/Bootstrap.java,v
  retrieving revision 1.34
  retrieving revision 1.35
  diff -u -r1.34 -r1.35
  --- Bootstrap.java    13 Feb 2002 20:01:37 -0000      1.34
  +++ Bootstrap.java    1 Apr 2002 00:13:23 -0000       1.35
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/Bootstrap.java,v
 1.34 2002/02/13 20:01:37 craigmcc Exp $
  - * $Revision: 1.34 $
  - * $Date: 2002/02/13 20:01:37 $
  + * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/Bootstrap.java,v
 1.35 2002/04/01 00:13:23 patrickl Exp $
  + * $Revision: 1.35 $
  + * $Date: 2002/04/01 00:13:23 $
    *
    * ====================================================================
    *
  @@ -85,7 +85,7 @@
    * class path and therefore not visible to application level classes.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.34 $ $Date: 2002/02/13 20:01:37 $
  + * @version $Revision: 1.35 $ $Date: 2002/04/01 00:13:23 $
    */
   
   public final class Bootstrap {
  @@ -121,6 +121,7 @@
               System.setProperty("catalina.base", getCatalinaHome());
   
           // Construct the class loaders we will need
  +        ClassLoader extLoader = null;
           ClassLoader commonLoader = null;
           ClassLoader catalinaLoader = null;
           ClassLoader sharedLoader = null;
  @@ -131,6 +132,14 @@
               File packed2[] = new File[2];
               ClassLoaderFactory.setDebug(debug);
   
  +            // Put the JDK's installed extensions in the parent class loader.
  +            // Presumably, the "java.ext.dirs" property has already been set
  +            // to a zero length string.
  +            packed[0] = new File(System.getProperty("java.home"),
  +                                 "lib" + File.separator + "ext");
  +            extLoader =
  +                ClassLoaderFactory.createClassLoader(null, packed, null);
  +
               unpacked[0] = new File(getCatalinaHome(),
                                      "common" + File.separator + "classes");
               packed2[0] = new File(getCatalinaHome(),
  @@ -138,7 +147,14 @@
               packed2[1] = new File(getCatalinaHome(),
                                     "common" + File.separator + "lib");
               commonLoader =
  -                ClassLoaderFactory.createClassLoader(unpacked, packed2, null);
  +                ClassLoaderFactory.createClassLoader(unpacked, packed2,
  +                                                     extLoader);
  +
  +            // Need to have the commonLoader only delegate to the parent
  +            // class loader only after searching its own repositories. This
  +            // allows the commonLoader's repositories to take priority over
  +            // the JDK's installed extensions.
  +            ((StandardClassLoader)commonLoader).setDelegate(false);
   
               unpacked[0] = new File(getCatalinaHome(),
                                      "server" + File.separator + "classes");
  @@ -155,6 +171,7 @@
               sharedLoader =
                   ClassLoaderFactory.createClassLoader(unpacked, packed,
                                                        commonLoader);
  +
           } catch (Throwable t) {
   
               log("Class loader creation threw exception", t);
  
  
  
  1.4       +18 -5     
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/Tool.java
  
  Index: Tool.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/Tool.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- Tool.java 18 Dec 2001 02:50:30 -0000      1.3
  +++ Tool.java 1 Apr 2002 00:13:23 -0000       1.4
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/Tool.java,v
 1.3 2001/12/18 02:50:30 patrickl Exp $
  - * $Revision: 1.3 $
  - * $Date: 2001/12/18 02:50:30 $
  + * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup/Tool.java,v
 1.4 2002/04/01 00:13:23 patrickl Exp $
  + * $Revision: 1.4 $
  + * $Date: 2002/04/01 00:13:23 $
    *
    * ====================================================================
    *
  @@ -116,7 +116,7 @@
    * </ul>
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.3 $ $Date: 2001/12/18 02:50:30 $
  + * @version $Revision: 1.4 $ $Date: 2002/04/01 00:13:23 $
    */
   
   public final class Tool {
  @@ -214,6 +214,14 @@
                   log("Constructing class loader");
                   ClassLoaderFactory.setDebug(1);
               }
  +            // Put the JDK's installed extensions in the parent class loader.
  +            // Presumably, the "java.ext.dirs" property has already been set
  +            // to a zero length string.
  +            File[] extFile = new File[1];
  +            extFile[0] = new File(System.getProperty("java.home"),
  +                                    "lib" + File.separator + "ext");
  +            ClassLoader extLoader =
  +                ClassLoaderFactory.createClassLoader(null, extFile, null);
               ArrayList packed = new ArrayList();
               ArrayList unpacked = new ArrayList();
               unpacked.add(new File(catalinaHome, "classes"));
  @@ -240,7 +248,12 @@
                   ClassLoaderFactory.createClassLoader
                   ((File[]) unpacked.toArray(new File[0]),
                    (File[]) packed.toArray(new File[0]),
  -                 null);
  +                 extLoader);
  +            // Need to have the classLoader only delegate to the parent
  +            // class loader only after searching its own repositories. This
  +            // allows the classLoader's repositories to take priority over
  +            // the JDK's installed extensions.
  +            ((StandardClassLoader)classLoader).setDelegate(false);
           } catch (Throwable t) {
               log("Class loader creation threw exception", t);
               System.exit(1);
  
  
  
  1.9       +3 -2      jakarta-tomcat-4.0/jasper/src/bin/jasper.bat
  
  Index: jasper.bat
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-4.0/jasper/src/bin/jasper.bat,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- jasper.bat        30 Jan 2002 22:13:50 -0000      1.8
  +++ jasper.bat        1 Apr 2002 00:13:23 -0000       1.9
  @@ -15,7 +15,7 @@
   rem   JAVA_OPTS     (Optional) Java runtime options used when the "start",
   rem                 "stop", or "run" command is executed.
   rem
  -rem $Id: jasper.bat,v 1.8 2002/01/30 22:13:50 patrickl Exp $
  +rem $Id: jasper.bat,v 1.9 2002/04/01 00:13:23 patrickl Exp $
   rem ---------------------------------------------------------------------------
   
   rem Guess JASPER_HOME if not defined
  @@ -46,6 +46,7 @@
   for %%i in ("%JASPER_HOME%\common\lib\*.jar") do call 
"%JASPER_HOME%\bin\cpappend.bat" %%i
   for %%i in ("%JASPER_HOME%\shared\lib\*.jar") do call 
"%JASPER_HOME%\bin\cpappend.bat" %%i
   set CLASSPATH=%CLASSPATH%;%JASPER_HOME%\shared\classes
  +for %%i in ("%JAVA_HOME%\jre\lib\ext\*.jar") do call 
"%JASPER_HOME%\bin\cpappend.bat" %%i
   
   rem Parse arguments
   if ""%1"" == ""jspc"" goto doJspc
  @@ -65,6 +66,6 @@
   goto setArgs
   :doneSetArgs
   
  -%_RUNJAVA% %JAVA_OPTS% %JASPER_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" 
-classpath "%CLASSPATH%" -Djasper.home="%JASPER_HOME%" org.apache.jasper.JspC 
%CMD_LINE_ARGS%
  +%_RUNJAVA% %JAVA_OPTS% %JASPER_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" 
-Djava.ext.dirs="%JAVA_EXT_DIRS%" -classpath "%CLASSPATH%" 
-Djasper.home="%JASPER_HOME%" org.apache.jasper.JspC %CMD_LINE_ARGS%
   
   :end
  
  
  
  1.9       +6 -2      jakarta-tomcat-4.0/jasper/src/bin/jasper.sh
  
  Index: jasper.sh
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-4.0/jasper/src/bin/jasper.sh,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- jasper.sh 30 Jan 2002 22:13:50 -0000      1.8
  +++ jasper.sh 1 Apr 2002 00:13:23 -0000       1.9
  @@ -14,7 +14,7 @@
   #   JAVA_OPTS     (Optional) Java runtime options used when the "start",
   #                 "stop", or "run" command is executed.
   #
  -# $Id: jasper.sh,v 1.8 2002/01/30 22:13:50 patrickl Exp $
  +# $Id: jasper.sh,v 1.9 2002/04/01 00:13:23 patrickl Exp $
   # -----------------------------------------------------------------------------
   
   # OS specific support.  $var _must_ be set to either true or false.
  @@ -68,6 +68,9 @@
     CLASSPATH="$CLASSPATH":"$i"
   done
   CLASSPATH="$CLASSPATH":"$JASPER_HOME"/shared/classes
  +for i in "$JAVA_HOME"/jre/lib/ext/*.jar; do
  +  CLASSPATH="$CLASSPATH":"$i"
  +done
   
   # For Cygwin, switch paths to Windows format before running java
   if $cygwin; then
  @@ -82,7 +85,8 @@
   
     shift
     exec "$_RUNJAVA" $JAVA_OPTS $JASPER_OPTS \
  -    -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \
  +    -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" \
  +    -Djava.ext.dirs="$JAVA_EXT_DIRS" -classpath "$CLASSPATH" \
       -Djasper.home="$JASPER_HOME" \
       org.apache.jasper.JspC "$@"
   
  
  
  

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to