[java]默认语言(user.language)和默认区域(user.region)设置

[java]默认语言(user.language)和默认区域(user.region)设置


一、在系统属性中设置

1、win下在控制面板中设置

这个大家都会、不作详细说明。


二、Linux下

1、RHEL/CentOS : 修改 /etc/sysconfig/i18n 的 LANG变量

英文:en_US.UTF8

中文:zh_CN.UTF8


1
2
3
[root@cloevm ~]# cat /etc/sysconfig/i18n
LANG="en_US.UTF-8"
SYSFONT="latarcyrheb-sun16"

2、Solaris :修改 /etc/default/init 的LANG变量

英文: EN

中文: zh

1
2
3
4
-bash-3.00# cat /etc/default/init |grep LANG
# TZ, LANG, CMASK, or any of the LC_* environment variables.  value may
#LANG=zh
LANG=EN

三、在Tomcat下也可以设置默认的语言和区域

1、在catalina.sh 或catalina.bat中设置启动参数

java -Djava.util.logging.config.file=/ytxt/tomcat6/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -server -Xms1024m -Xmx2048m -XX:PermSize=128M -XX:MaxPermSize=512M -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000 -Djava.endorsed.dirs=/ytxt/tomcat6/endorsed -classpath /ytxt/tomcat6/bin/bootstrap.jar -Dcatalina.base=/ytxt/tomcat6 -Dcatalina.home=/ytxt/tomcat6 -Djava.io.tmpdir=/ytxt/tomcat6/temp -Duser.language=zh -Duser.region=CN org.apache.catalina.startup.Bootstrap start


    "$_RUNJAVA" "$LOGGING_CONFIG" $LOGGING_MANAGER $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" \
      -Duser.language="zh" \
      -Duser.region="CN" \

      org.apache.catalina.startup.Bootstrap "$@" start \
      >> "$CATALINA_OUT" 2>&1 &


四、报以下错误往往是由于默认语言和默认区域没有设置正确、或者配置文件找不到导致的。

Caused by: java.util.MissingResourceException: Can't find bundle for base name tyvencode, locale en_US
at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:1427)
at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1250)
at java.util.ResourceBundle.getBundle(ResourceBundle.java:705)
at com.tyyd.tyven.commons.message.TyvenErrors.(TyvenErrors.java:21)
... 54 more


错误原因分析:

1)、在classpath下找不到tyvencode_en_US.properties 或者tyvencode.properties但是有tyvencode_zh_CN.properties

2)、默认语言和默认区域没有设置正确

解决办法一:

1)、将操作系统的默认语言和区域改成中文、中国

解决办法二:

1)、tomcat启动时指定参数-Duser.language=zh -Duser.region=CN 



你可能感兴趣的:(Java专区)