Hi all, I have a problem using startup script for tomcat in linux. It actually starts up when booting up. but then, it says " [Failed] " and the reason is "JAVA_HOME variable not defined correctly. This environment variable is neccesary for running this program. "
But I have defined the environment variable in my startup script. I am using Tomcat 4.1.18 with j2sdk1.4.1_02 in redhat linux. tomcat directory is /usr/local/jakarta-tomcat-4.1.18 and the java directory is /usr/ java/j2sdk1.4.1_02 I placed the startup script named tomcatd.sh in "/etc/rc.d/init.d" The following is my startup script. #!/bin/bash # # Startup script for Jakarta Tomcat # # chkconfig: 345 84 16 # description: Jakarta Tomcat Java Servlet/JSP Container TOMCAT_HOME=/usr/local/jakarta-tomcat-4.1.18 TOMCAT_START=/usr/local/jakarta-tomcat-4.1.18/bin/startup.sh TOMCAT_STOP=/usr/local/jakarta-tomcat-4.1.18/bin/shutdown.sh #Necessary environment variables export CATALINA_HOME=/usr/local/jakarta-tomcat-4.1.18 export JAVA_HOME=/usr/java/jdk1.4.1_02 # Source function library. . /etc/rc.d/init.d/functions # Source networking configuration. . /etc/sysconfig/network # Check that networking is up. [ ${NETWORKING} = "no" ] && exit 0 #Check for tomcat script if [ ! -f $TOMCAT_HOME/bin/catalina.sh ] then echo "Tomcat not available..." exit fi start() { echo -n "Starting Tomcat: " daemon $TOMCAT_START echo touch /var/lock/subsys/tomcatd # We may need to sleep here so it will be up for apache # sleep 5 #Instead should check to see if apache is up by looking for http.pid } stop() { echo -n $"Shutting down Tomcat: " daemon $TOMCAT_STOP rm -f /var/lock/subsys/tomcatd.pid echo } case "$1" in start) start ;; stop) stop ;; restart) stop sleep 3 start ;; *) echo "Usage: tomcatd {start|stop|restart}" exit 1 esac Can anyone help me out?. Thanks in advance, kamaleshwaran sivalingam