본문 바로가기

java

TOMCAT utf-8 OS 별로 한글 깨짐 해결

솔라리스에서 utf-8 로 한글 안깨지고 잘되던것이 IBM AIX 에서 깨짐

원인은 file encoding의 차이점에서 발생

 System.getProperties().get("file.encoding"))

로찍어보면 솔라리스는 5601 AIX는 ISO-8859_1 임(OS 설정에 따라 다름)

톰캣을 실행 할때 옵션으로 파일 인코딩을 지정 해주면 해결 가능~

catalina.sh 을 열어 수정

elif [ "$1" = "start" ] ; then

  shift
  touch "$CATALINA_BASE"/logs/catalina.out
  if [ "$1" = "-security" ] ; then
    echo "Using Security Manager"
    shift
    "$_RUNJAVA" "$LOGGING_CONFIG" $JAVA_OPTS  $CATALINA_OPTS \
      -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \
      -Djava.security.manager \
      -Djava.security.policy=="$CATALINA_BASE"/conf/catalina.policy \
      -Dcatalina.base="$CATALINA_BASE" \
      -Dcatalina.home="$CATALINA_HOME" \
      -Djava.io.tmpdir="$CATALINA_TMPDIR" \
      -Dfile.encoding="utf-8"\ // 추가된 부분
      org.apache.catalina.startup.Bootstrap "$@" start \
      >> "$CATALINA_BASE"/logs/catalina.out 2>&1 &

      if [ ! -z "$CATALINA_PID" ]; then
        echo $! > $CATALINA_PID
      fi
  else
    "$_RUNJAVA" "$LOGGING_CONFIG" $JAVA_OPTS  $CATALINA_OPTS \
      -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \
      -Dcatalina.base="$CATALINA_BASE" \
      -Dcatalina.home="$CATALINA_HOME" \
      -Djava.io.tmpdir="$CATALINA_TMPDIR" \
      -Dfile.encoding="utf-8"\ // 추가된 부분
      org.apache.catalina.startup.Bootstrap "$@" start \
      >> "$CATALINA_BASE"/logs/catalina.out 2>&1 &

      if [ ! -z "$CATALINA_PID" ]; then
        echo $! > $CATALINA_PID
      fi
  fi

'java' 카테고리의 다른 글

자릿수 만큼 0 붙이기  (0) 2011.09.07
JAVA7 문자열 비교  (0) 2011.09.06
키보드 입력 받기  (0) 2008.10.25
자바의 데이터형  (0) 2008.10.25
break문, continue문  (0) 2008.10.25