In bin\xindice.bat:
If XINDICE_HOME is not defined, the parent directory of where xindice.bat
is, is tested for a dist\xindice*.jar file. If found, XINDICE_HOME is set to
the parent directory. Otherwise it exits with an explanatory error.
More local environment variables are used to avoid unintended interactions
with other batch files.
Comments indicating correct usage of XINDICE_DB_HOME and XINDICE_CONFIG. If
XINDICE_CONFIG is set, it's value with be set for -Dxindice.configuration.
LOGLEVEL is no longer set explicitly. LOGGER has a default which can be
overridden.
References to ant (comments and classpath) removed.
If JAVACMD is not set, it defaults to %JAVA_HOME%\bin\java.
In bin/xindice:
Only simple changes were made as I do not have a development environment
setup to test them.
LOGLEVEL is no longer set explicitly. (Will this work if it is undefined?).
LOGGER has a default which can be overridden.
The property xindice.configuration is set to XINDICE_CONFIG. (Will this work
if it is undefined?)
This is my first patch. Feedback is welcome.
/Neil
Index: bin/xindice
===================================================================
RCS file: /home/cvspublic/xml-xindice/bin/xindice,v
retrieving revision 1.4
diff -u -r1.4 xindice
--- bin/xindice 27 Oct 2002 00:02:50 -0000 1.4
+++ bin/xindice 16 Jan 2004 20:32:29 -0000
@@ -44,7 +44,8 @@
exit 1 ;;
esac
-LOGGER=org.apache.commons.logging.impl.SimpleLog
-LOGLEVEL=debug
+if test -z "$LOGGER"; then
+ LOGGER=org.apache.commons.logging.impl.SimpleLog
+fi
-$JAVA_HOME/bin/java -Xms16m -Xmx128m -Dxindice.home="$XINDICE_HOME"
-Dorg.apache.commons.logging.Log="$LOGGER"
-Dorg.apache.commons.logging.simplelog.defaultlog="$LOGLEVEL"
-Dcmd.home="$CMD_HOME" $VMPROPS -classpath "$CLASSPATH" $CLASS_NAME $*
+$JAVA_HOME/bin/java -Xms16m -Xmx128m -Dxindice.home="$XINDICE_HOME"
-Dxindice.configuration="$XINDICE_CONFIG"
-Dorg.apache.commons.logging.Log="$LOGGER"
-Dorg.apache.commons.logging.simplelog.defaultlog="$LOGLEVEL"
-Dcmd.home="$CMD_HOME" $VMPROPS -classpath "$CLASSPATH" $CLASS_NAME $*
Index: bin/xindice.bat
===================================================================
RCS file: /home/cvspublic/xml-xindice/bin/xindice.bat,v
retrieving revision 1.9
diff -u -r1.9 xindice.bat
--- bin/xindice.bat 16 Aug 2003 02:57:32 -0000 1.9
+++ bin/xindice.bat 16 Jan 2004 20:32:29 -0000
@@ -7,70 +7,62 @@
rem find JAVA_HOME
if not "%JAVA_HOME%"=="" goto checkXindiceHome
-echo JAVA_HOME is not set and ant could not be located. Please set JAVA_HOME.
+echo JAVA_HOME is not set and could not be located. Please set JAVA_HOME.
goto end
-
+
:checkXindiceHome
-rem find XINDICE_HOME
-if not "%XINDICE_HOME%"=="" goto checkJava
-
-rem check for Xindice in "Program Files" on the system drive
-if not exist "%SystemDrive%\Program Files\Xindice" goto checkSystemDrive
-set XINDICE_HOME=%SystemDrive%\Program Files\Xindice
-goto checkJava
-
-:checkSystemDrive
-rem check for Xindice in the root directory of the system drive
-if not exist "%SystemDrive%\Xindice" goto checkWorkXindice
-set XINDICE_HOME=%SystemDrive%\Xindice
-goto checkJava
-
-:checkWorkXindice
-rem check for Xindice in the work directory on the system drive
-if not exist "%SystemDrive%\work\Xindice" goto checkCurrent
-set XINDICE_HOME=%SystemDrive%\work\Xindice
-goto checkJava
-
-:checkCurrent
-if exist ".\config" set XINDICE_HOME=.
-echo %XINDICE_HOME%
-goto checkJava
-
-:noXindiceHome
-echo XINDICE_HOME is not set and ant could not be located. Please set
XINDICE_HOME.
-goto end
-
-:checkJava
-if "%JAVACMD%" == "" set JAVACMD=java
-if "%XINDICE_DB_HOME%" == "" set XINDICE_DB_HOME=%XINDICE_HOME%
-
-set LOCALCLASSPATH=%CLASSPATH%;%ANT_HOME%\config
-for %%i in (%XINDICE_HOME%\dist\xindice*.jar) do call
%XINDICE_HOME%\bin\lcp.bat %%i
-for %%i in (%XINDICE_HOME%\java\lib\*.jar) do call %XINDICE_HOME%\bin\lcp.bat
%%i
-
-if "%JAVA_HOME%" == "" goto runXindice
-if exist %JAVA_HOME%\lib\tools.jar call %XINDICE_HOME%\bin\lcp.bat
%JAVA_HOME%\lib\tools.jar
-if exist %JAVA_HOME%\lib\classes.zip call %XINDICE_HOME%\bin\lcp.bat
%JAVA_HOME%\lib\classes.zip
-
-:runXindice
-set CL=
-:LOOP
-if "%1"=="" goto DONE
-set CL=%CL% %1
-shift
-goto LOOP
-:DONE
-
-set LOGGER=org.apache.commons.logging.impl.SimpleLog
-set LOGLEVEL=debug
-%JAVACMD% -Xms16m -Xmx128m -Dxindice.home=%XINDICE_HOME%
-Dxindice.db.home=%XINDICE_DB_HOME% -Dorg.apache.commons.logging.Log=%LOGGER%
-Dorg.apache.commons.logging.simplelog.defaultlog=%LOGLEVEL%
-Dcmd.home=%XINDICE_HOME%\bin -classpath %LOCALCLASSPATH%
org.apache.xindice.tools.XMLTools %CL%
-
-:end
-if not "%OS%"=="Windows_NT" goto win9xEnd
-:winNTend
[EMAIL PROTECTED]
-goto mainEnd
-:win9xEnd
-set JAVACMD=
-set LOCALCLASSPATH=
-:mainEnd
+rem find XINDICE_HOME
+set _XINDICE_HOME=%XINDICE_HOME%
+if not "%_XINDICE_HOME%"=="" goto checkJava
+
+rem Use the location of this script as a default for XINDICE_HOME.
+set _XINDICE_HOME=%~dp0..
+if not exist "%~dp0..\dist\xindice*.jar" goto noXindiceHome
+echo WARNING: The environment variable XINDICE_HOME is not set.
+echo Defaulting to %_XINDICE_HOME%.
+goto checkJava
+
+:noXindiceHome
+echo XINDICE_HOME is not set and could not be located. Please set XINDICE_HOME.
+goto end
+
+:checkJava
+set _JAVACMD=%JAVACMD%
+if "%_JAVACMD%" == "" set _JAVACMD=%JAVA_HOME%\bin\java
+if not exist "%_JAVACMD%.exe" echo Error: "%_JAVACMD%.exe" not found - check
JAVA_HOME && goto end
+
+rem set XINDICE_DB_HOME to override default database locations or use a config
file.
+rem set XINDICE_CONFIG to override the deafult Xindice configuration,
+rem including setting the database location.
+rem set LOGLEVEL to control the amount of information logged.
+if "%LOGGER%" == "" set LOGGER=org.apache.commons.logging.impl.SimpleLog
+
+set LOCALCLASSPATH=%CLASSPATH%
+for %%i in (%_XINDICE_HOME%\dist\xindice*.jar) do call
%_XINDICE_HOME%\bin\lcp.bat %%i
+for %%i in (%_XINDICE_HOME%\java\lib\*.jar) do call
%_XINDICE_HOME%\bin\lcp.bat %%i
+
+if "%JAVA_HOME%" == "" goto runXindice
+if exist %JAVA_HOME%\lib\tools.jar call %_XINDICE_HOME%\bin\lcp.bat
%JAVA_HOME%\lib\tools.jar
+if exist %JAVA_HOME%\lib\classes.zip call %_XINDICE_HOME%\bin\lcp.bat
%JAVA_HOME%\lib\classes.zip
+
+:runXindice
+set CL=
+:LOOP
+if "%1"=="" goto DONE
+set CL=%CL% %1
+shift
+goto LOOP
+:DONE
+
+%_JAVACMD% -Xms16m -Xmx128m -Dxindice.home=%_XINDICE_HOME%
-Dxindice.configuration=%XINDICE_CONFIG% -Dxindice.db.home=%XINDICE_DB_HOME%
-Dorg.apache.commons.logging.Log=%LOGGER%
-Dorg.apache.commons.logging.simplelog.defaultlog=%LOGLEVEL%
-Dcmd.home=%_XINDICE_HOME%\bin -classpath %LOCALCLASSPATH%
org.apache.xindice.tools.XMLTools %CL%
+
+:end
+if not "%OS%"=="Windows_NT" goto win9xEnd
+:winNTend
[EMAIL PROTECTED]
+goto mainEnd
+:win9xEnd
+set _JAVACMD=
+set LOCALCLASSPATH=
+set _XINDICE_HOME=
+:mainEnd