tomcat 4.1.x のバックアップ(No.2)


tomcat 4.1.x

LOG管理

 7日毎にgzip圧縮し、35日毎に圧縮ファイルを消去するスクリプト。
 これをcron.dailyに登録する。

#!/bin/sh
LOGDIR=/var/log/tomcat41

for i in `find $LOGDIR -name "*.txt" -mtime +6`
do
  gzip $i
done

for i in `find $LOGDIR -name "*.txt.gz" -mtime +34`
do
  rm -f $i
done

4.1.31

何故か起動しない。

jspから生成されたjavaソースコードの文字エンコーディングを変更する

TomcatではJSPからjavaソースコードを生成する時、デフォルトでは文字エンコーディングをUTF-8に指定します。
これを変更する場合は %TOMCAT41_HOME%/conf/web.xml の158行目付近に以下の設定を追加します。

 <servlet>
   <servlet-name>jsp</servlet-name>
   <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
   <init-param>
     <param-name>logVerbosityLevel</param-name>
     <param-value>WARNING</param-value>
   </init-param>
 
   <!-- ここから追加 -->
   <init-param>
     <param-name>javaEncoding</param-name>
     <param-value>Windows-31J</param-value>
   </init-param>
   <!-- ここまで追加 -->
 
   <load-on-startup>3</load-on-startup>
 </servlet>

設定ファイル

起動スクリプト

#!/bin/bash
#
# chkconfig: 345 97 03
# description: tomcat41
#
# Startup script for Tomcat Application Server
#


# ----- Save and Set Environment Variables --------------------------------

PROGDIR=/usr/local/jakarta-tomcat-4.1/bin
PROGUSER=tomcat41
UMASK_VALUE=002
LOCALE=ja_JP.eucJP
JAVA_HOME=/usr/local/jdk-1.4.2
CATALINA_OPTS="-server -Xmx256m -Xms256m -Xss256k -XX:NewSize=128m -XX:MaxNewSize=128m -Djava.awt.headless=true -Duser.language=ja -Duser.region=JP"


# ----- Define Function ---------------------------------------------------

start() {
  su - ${PROGUSER} -c "umask ${UMASK_VALUE}; env LC_ALL=${LOCALE} JAVA_HOME=${JAVA_HOME} CATALINA_OPTS=\"${CATALINA_OPTS}\" ${PROGDIR}/catalina.sh start"
}

stop() {
  su - ${PROGUSER} -c "umask ${UMASK_VALUE}; env LC_ALL=${LOCALE} JAVA_HOME=${JAVA_HOME} CATALINA_OPTS=\"${CATALINA_OPTS}\" ${PROGDIR}/catalina.sh stop"
}

wait() {
  while :
  do
    ps -ef | cut -d " " -f 1 | grep ${PROGUSER}
    if [ $? -ne 0 ]; then
      break;
    fi
    sleep 1
  done 2>&1 > /dev/null
}


# ----- Execute The Requested Command -------------------------------------

case "$1" in
  start)
    start
    ;;
  stop)
    stop
    ;;
  restart|reload)
    stop
    wait
    start
    ;;
  *)
    echo "Usage:"
    echo "  $0 (start|stop|reload)"
    echo ""
    echo "Commands:"
    echo "  start   -  Start server"
    echo "  stop    -  Stop server"
    echo "  restart -  Restart server"
    echo ""
    ;;
esac

exit 0