【发布时间】:2012-11-20 13:28:24
【问题描述】:
我的问题是,当 Tomcat 作为服务启动时,应用程序页面 (WAR) 中的元音变音字符没有正确呈现,但是当我手动启动服务器时,一切看起来都很好。我检查了系统的编码 (en_US.UTF-8),它应该在这两种情况下都能正常工作。
/etc/init.d/tomcat7
#!/bin/bash
# description: Tomcat Start Stop Restart
# processname: tomcat
# chkconfig: 234 20 80
JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH
CATALINA_HOME=/opt/tomcat
case $1 in
start)
sh $CATALINA_HOME/bin/startup.sh
;;
stop)
sh $CATALINA_HOME/bin/shutdown.sh
;;
restart)
sh $CATALINA_HOME/bin/shutdown.sh
sh $CATALINA_HOME/bin/startup.sh
;;
esac
exit 0
你能帮我解决这个问题吗?
【问题讨论】:
-
你有
LANG=en_US.UTF-8的/etc/environment吗? -
/etc/environment 为空,但是我输入
$> locale时系统的编码是LANG=en_US.UTF-8 -
我认为这更多是属于serverfault的问题,因为它与编程无关。
-
服务/cron 作业等可能没有该语言环境。但是@UwePlonus 的建议可能会更有成效,因为我在这些事情上那么很好。
-
你说的都对,现在发布在 ServerFault redirect
标签: java linux service character-encoding tomcat7