Linux+Oracle 10g EM按钮出现乱码解决


在Linux环境中安装Oracle 10g,启用EM时,会出现按钮显示乱码的现象,如下:

Linux+Oracle 10g EM按钮出现乱码解决

在网上找了找原因,原来是因为在安装Oracle 10g时,JDK/JRE自动选择了字符集,而在$ORACLE_HOME/jdk/jre/lib和$ORACLE_HOME/jre/1.4.2/lib目录下,都有多种字体:

[oracle@ www.bkjia.com lib]$ cd /home/oracle/product/10g/jdk/jre/lib/                 
[oracle@ www.bkjia.com lib]$ ll *zh_CN*                                               
-rwxr-xr-x  1 oracle oinstall 6854 Apr 20  2005 font.properties.zh_CN.RedHat  
-rwxr-xr-x  1 oracle oinstall 7410 Apr 20  2005 font.properties.zh_CN.Redhat2.1
-rwxr-xr-x  1 oracle oinstall 6845 Apr 20  2005 font.properties.zh_CN.Sun     
-rwxr-xr-x  1 oracle oinstall 7137 Apr 20  2005 font.properties.zh_CN_UTF8.Sun
[oracle@ www.bkjia.com lib]$ cd /home/oracle/product/10g/jre/1.4.2/lib/               
[oracle@ www.bkjia.com lib]$ ll *zh_CN*                                               
-rwxr-xr-x  1 oracle oinstall 6854 Apr  6  2005 font.properties.zh_CN.Redhat  
-rwxr-xr-x  1 oracle oinstall 7410 Apr  6  2005 font.properties.zh_CN.Redhat2.1
-rwxr-xr-x  1 oracle oinstall 6845 Apr  6  2005 font.properties.zh_CN.Sun     
-rwxr-xr-x  1 oracle oinstall 7137 Apr  6  2005 font.properties.zh_CN_UTF8.Sun
 
而每一个目录下都有一个缺省的字符集font.properties,我们只要用合适的中文字符集来替换缺省字符集即可,我
选择的是font.properties.zh_CN.Redhat。
 
首先,我们应该先将em关闭
 
然后进行替换,注意,$ORACLE_HOME/jdk/jre/lib和$ORACLE_HOME/jre/1.4.2/lib目录下都要进行如下替换
[oracle@ www.bkjia.com lib]$ cp font.properties.zh_CN.Redhat font.properties          
 
替换之后,我们还要查一下,linux中有没有安装相应的中文字符集,怎么看?
 
[oracle@ www.bkjia.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开启,此时,我们发现,乱码不见了,搞定!

相关内容