Pentaho6.1實現國際化一:Pentaho Report Designer6.1經過資源文件實現國際化

1、軟件環境

  • 操做系統: Windows10 64位
  • PRD版本:prd-ce-6.1.0.1-196

2、PRD國際化原理簡介

查看pentaho bi的源碼,你會發現文件夾中存在大量的.properties文件;有心的童鞋上網查查資料就會發現該軟件經過 jQuery.i18n.properties實現國際化 ,CDE、SaiKu、PRD等都是經過這種方法實現國際化,具體的內容小編不在這裏作詳細的介紹,關於這方面的資料請自行Google或百度吧!瀏覽器

3、提出問題?

上面的報表是用PRD作得,咱們習慣性的將每張報表的表頭寫死在面板上;咱們可否將這個表頭的信息寫在一個文件裏(譬如i18n的資源文件)喃?幸運的是,Pentaho公司給咱們提供了一整套的解決方案,廢話很少說,小編這就操做一遍!bash

4、PRD國際化的解決方案

  • 準備資源文件 

文件裏的具體內容見下:工具

#messages.properties   默認的語言
my.message.title=hello11111111

#messages_zh.properties  中文簡體
my.message.title=zh

#messages_en.properties  標準英文
my.message.title=hello-en

並將這些資源文件放置在報表的 [PRD Install]/resources 目錄下:編碼

  • 選中一個 resource -label,將其拖拽到面板上

  • 設置resource -label的 Attributes 面板

  • 初步預覽效果

  • 在PRD中模擬根據瀏覽器語言進行切換

您的報表將根據您的設置進行本地化切換,你能夠同報表內置的environment.designtime.locale變量來進行切換,  File ---->  Configuration ---> environment.designtime.localeurl

若是將此報表發佈到pentaho bi上,再將原先的資源文件上傳到 pentaho/WEB-INF/classes 目錄下,該表就能夠根據瀏覽器的語言自動進行相關字段的切換,是否是很神奇呀!spa

5、資源文件亂碼解決方案

若是按照小編的上面步驟去操做,很不幸你會出現資源文件亂碼的問題。因爲上面內容是小編昨晚連夜寫的,並且只是個簡單的例子,今天早上小編到公司按照上面的套路去作就出現亂碼問題;不過在小編的努力下,最終仍是得以解決!操作系統

  • 利用JDK自帶的轉碼工具操做

jdk官方自帶了了一個轉發工具,很方面就能將咱們的漢字轉成計算機能識別的編碼:.net

用cmd進入到資源文件所在的目錄,也就是報表的目錄:[PRD Install]/resources調試

D:\prd-ce-6.1.0.1-196\report-designer\resources>native2ascii -encoding utf8 MessagesReport_zh.properties MessagesReport_zh-CN.properties

進入資源文件目錄,機會發現增長了MessagesReport_zh-CN.properties這個資源文件code

  • 字符編碼格式設置的注意項

若是按照先前操做,可能還會出現亂碼。緣由在於還須要設置文本的格式。

打開notepad++軟件 ,設置選項爲:格式------->以UTF-8無BOM格式編碼

  • 成果展現,本次小編在瀏覽端進行調試;

 

 

 

Pentaho6.1實現國際化二:Pentaho CDE經過資源文件實現國際化

        https://my.oschina.net/TaoPengFeiBlog/blog/798746

官網API詳解1:https://help.pentaho.com/Documentation/6.1/0L0/130/0C0

官網API詳解2:https://help.pentaho.com/Documentation/6.1/0L0/130/0C0/000

相關文章
相關標籤/搜索