Jetspeed的中文化

引用:http://www.cn-java.com/target/news.php?news_id=2711

Jetspeed本身已經解決國際化問題。只要按照Jetspeed的國際化要求進行正確的編碼設置和配置,所有網頁均可以正確顯示。
本文教會大家怎麼樣漢化Jetspeed項目。

1.讓Jetspeed支持中文本地化。
Jetspeed中支持多種語言的本地化,偏偏沒有提供中文的本地化,不知道是不是Apache開源組織對中國軟件水平的歧視。不管怎樣,我們中國人還要靠自己的努力來改變世界對中國軟件的看法。廢話不說,下面列出中文本地化的步驟:

(1)增加本地化屬性文件
在/WEB-INF/classes/org/apache/jetspeed/modules/localization目錄下,存放了Jetspeed使用的本地化屬性文件,但是還沒有中文本地化屬性文件。
打開JetspeedLocalization.properties,將該屬性文件中的屬性值翻譯爲中文,保存文件到新的文件,如1.properties。再使用轉碼工具(每個jre裏都自帶了這個工具)native2ascii .exe將翻譯完的屬性文件轉碼成ascii編碼:
native2ascii 1.properties JetspeedLocalization_zh.properties。
最後確保將這個本地化屬性文件JetspeedLocalization_zh.properties放在該目錄下。
注:假如你的Jetspeed項目中類結構已經打包部署,請解開這些類結構,部署到classes目錄下,方便修改(此時應將原來的jar包從lib目錄下移除)。

(2)修改Jetspeed的兩個配置文件
---------------------------
/WEB-INF/conf/TurbineResources.properties
找到相應的屬性並修改其值:
#Velocity service
services.Velocity.input.encoding=UTF-8
#Localization service
locale.default.language=zh
locale.default.country=CN
locale.default.charset=GBK

---------------------------
/WEB-INF/conf/velocity.properties
找到相應的屬性並修改其值:
#template encoding
template.encoding=UTF-8

(3)執行完以上兩步,打開瀏覽器,設置瀏覽器的語言首選項,就可以看到不同語種顯示的頁面。

2.讓Jetspeed中的所有頁面中文化
上個步驟只是讓Jetspeed支持中文本地化,指的是Jetspeed中採用國際化技術製作的頁面可以正常顯示中文。
但是並非所有的Jetspeed內部頁面都已經採用國際化進行處理。我們需要將所有Jetspeed內部已經製作好的頁面模板,包括採用JSP技術製作的jsp頁面和採用Velocity製作的vm模板,進行國際化處理。就是說,我們需要將這些頁面模板中的靜態英文字符串採用國際化技術對其進行封裝。
具體技術如下:
---------------------------
JSP頁面:
頁面中確保加入了:

將靜態英文字符串替換爲
在默認本地化屬性文件JetspeedLocalization.properties文件中加入:
key_name=原來的英文字符串
在中文本地化屬性文件JetspeedLocalization_zh.properties文件中加入:
key_name=英文字符串的漢語翻譯

---------------------------
VM模板:
將靜態英文字符串替換爲$l10n.key_name
在默認本地化屬性文件JetspeedLocalization.properties文件中加入:
key_name=原來的英文字符串
在中文本地化屬性文件JetspeedLocalization_zh.properties文件中加入:
key_name=英文字符串的漢語翻譯

注意:
(1)JetspeedLocalization_zh.properties文件中的值必須通過native2ascii轉碼,而不是直接寫入中文。
(2)所有屬性文件中的key_name不得重複出現。

3.Jetspeed註冊文件的漢化
這些註冊文件包括Jetspeed的實體註冊文件(*.xreg)和Jetspeed站點結構描述文件(*.psml)。這些文件的漢化將影響到Jetspeed最終顯示頁面中的標題和可選擇資源名稱的顯示。
很簡單:將這些文件的編碼格式改爲GBK,然後就可以大肆修改文件中的標題、描述等字符串。注意千萬不要直接改動關鍵字段,如名稱、id號之類的。
這部分的修改涉及到Jetspeed中的具體資源,要謹慎修改,建議先熟悉其深刻含義。

發佈了1 篇原創文章 · 獲贊 0 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章