在Linux环境中安装Oracle 10g,启用EM时,会出现按钮显示乱码的现象,如下:
在网上找了找原因,原来是因为在安装Oracle 10g时,JDK/JRE自动选择了字符集,而在$ORACLE_HOME/jdk/jre/lib和$ORACLE_HOME/jre/1.4.2/lib目录下,都有多种字体:
[oracle@ www.linuxidc.com lib]$ cd /home/oracle/product/10g/jdk/jre/lib/
[oracle@ www.linuxidc.com lib]$ ll *zh_CN*
-rwxr-xr-x 1 oracle oinstall 6854 Apr 20 2005 font.properties.zh_CN.RedHat font.properties
替换之后,我们还要查一下,linux中有没有安装相应的中文字符集,怎么看?
[oracle@ www.linuxidc.com lib]$ tail font.properties
fontset.dialoginput.plain=\
-b&h-luxi mono-medium-r-normal--*-%d-*-*-m-*-iso8859-1,\
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
fontset.default=\
-b&h-luxi sans-medium-r-normal--*-%d-*-*-p-*-iso8859-1,\
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
filename.-misc-zysong18030-med ium-r-normal--*-%d-*-*-c-*-iso10646- 1=/usr/share/fonts/zh_CN/TrueType/zysong.ttf
根据最后一行的路径,我们去看看是否有该文件是否存在,如果没有,那说明没有安装相应的中文字符集,我们可以到Linux的系统安装盘中去找到相应的rpm包,进行安装,我的Linux是RHEL4,安装盘里是ttfonts-zh_CN-2.14-6.noarch.rpm版本的字符集。
最后还要清理一下Cache,路径一般是
ORACLE_HOME/oc4j/j2ee/oc4j_applications/applications/em/em/cabo/images/cache/zhs
注意:只需要清理该路径下的gif文件即可。
最后再将em开启,此时,我们发现,乱码不见了,搞定!