#!/bin/sh # Set some variables APP_HOME=%%APP_HOME%% STDOUT_LOG=%%STDOUT_LOG%% STDERR_LOG=%%STDERR_LOG%% JAR_FILE=${APP_HOME}/lib/webserver.jar MYSELF=`basename $0` # Set the CLASSPATH unset CLASSPATH for i in ${APP_HOME}/lib/* ; do if [ "$CLASSPATH" != "" ]; then CLASSPATH=${CLASSPATH}:$i else CLASSPATH=$i fi done # Check if the JAVA_HOME directory is defined, otherwise set it to the # fallback default if [ "${JAVA_HOME}a" = "a" ]; then JAVA_HOME=%%JAVA_HOME%% fi if [ -f ${JAVA_HOME}/lib/tools.jar ] ; then CLASSPATH=${CLASSPATH}:${JAVA_HOME}/lib/tools.jar fi JAVA_CMD=${JAVA_HOME}/bin/java ############################################################################## # Function that shows an error message # # This function is called by the 'checks' function # # Parameters: # 1: The message to be displayed. error() { echo -n "%%APP_SHORTNAME%%: ERROR: " echo $1 } ############################################################################## # Function that performs all checks necessary for starting or stopping the # application. # # This function is called by the 'start' and 'stop' functions # # This function expects no parameters checks() { # Make sure the application directory does exist if [ ! -d ${APP_HOME} ]; then error "Unable to find %%APP_TITLE%% home directory at ${APP_HOME}." exit 2 fi # Make sure the application JAR file exists if [ ! -r ${JAR_FILE} ]; then error "Unable to find %%APP_TITLE%% JAR file at ${JAR_FILE}." exit 3 fi # Make sure the Java VM can be found if [ ! -x ${JAVA_CMD} ]; then error "Unable to find Java VM at ${JAVA_HOME}." exit 4 fi } ############################################################################## # Functions that calls the application with the specified parameter # # Parameters: # 1: The argument to pass to the application (optional) app() { (cd ${APP_HOME} && ${JAVA_CMD} -cp ${CLASSPATH} -Dtomcat.home=${APP_HOME} org.apache.tomcat.startup.Tomcat $1 &) >> ${STDOUT_LOG} 2>> ${STDERR_LOG} } ############################################################################## # Function that starts the application # # This function is called from the main function # # This function expects no parameters start() { # Perform the checks checks # Stop the application app } ############################################################################## # Function that stops the application # # This function is called from the main function # # This function expects no parameters stop() { # Perform the checks checks # Stop the application app -stop } ############################################################################## # Main function. This function calls the 'start' and 'stop' functions. # # Parameters: # 1: The argument to this shell script main() { case "$1" in start) start ;; stop) stop ;; restart) stop start ;; *) echo "Usage: ${MYSELF} { start | stop | restart }" exit 64 ;; esac } # Call the main function and exit main $1 exit 0