星期五, 6月 20, 2008

oracle 10g OEM 按鈕亂碼

原文::http://www.homeweb.idv.tw/482



  這次因為測試的需要,以 SuSE Linux Enterprise 10 為平台,建立了一台 Oracle 10gR2,依照一般程序安裝完畢後,登入 OEM 卻發現,一般文字的中文顯示沒有問題,但是所有按鈕的中文字卻都是口口。



  上網翻了一下許多文章,一般的說法都是需要進行以下動作:

1. 先停止 OEM

emctl stop dbconsole





2. 分別進入以下三個路徑

$ORACLE_HOME/jdk/jre/lib

$ORACLE_HOME/jre/1.4.2/lib

$ORACLE_HOME/javavm/lib/ojvmfonts





3. 在每個目錄都透過以下指令覆蓋檔案

cp font.properties.zh_TW.Redhat font.properties





4. 進入 OEM 的圖示路徑,清除之前的檔案

cd $ORACLE_HOME/oc4j/j2ee/oc4j_applications/applications/em/em/cabo/images/cache/zht

rm *.gif

rm *.imx





5. 啟動 OEM

emctl start dbconsole





最後有許多人成功,也有許多人失敗,當然我也是失敗的其中一人。後來發現 font.properties.zh_TW.Redhat 的最後一行:

filename.-arphic_technology_co.-ar_pl_mingti2l_big5-medium-r-normal--*-%d-*-*-c-*-iso10646-1=/usr/share/fonts/zh_TW/TrueType/bsmi00lp.ttf

SuSE 也有這個 TrueType 字型,只是放置的路徑不同,因此我就修改了一下覆蓋後 font.properties 設定:

filename.-arphic_technology_co.-ar_pl_mingti2l_big5-medium-r-normal--*-%d-*-*-c-*-iso10646-1=/usr/X11R6/lib/X11/fonts/truetype/bsmi00lp.ttf



一樣清除 *.gif 與 *.imx 之後,重新啟動 OEM 之後,OEM 的按鈕就出現中文了。



PS:在文章 http://tw.myblog.yahoo.com/bullock0425/article?mid=464&prev=467&next=462 有提到: bsmi00lp.ttf 字體可以在 http://cle.linux.org.tw/fonts/Arphic/bsmi00lp.ttf 下載