快速业务通道

在MyEclispe中开发Strust2+Spring2+iBATIS2的向导(二) - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-16

基于Eclipse的Birt国际化的分析与改进

时间:2011-07-03 IBM 苏春波

开发环境

本文的开发环境为 Windows Vista Enterprise、birt-report-designer-all-in-one-2_2_2、Birt 2.2.2、Java EE 服务器使用 apache-tomcat-6.0.18,当然,您也可以使用 Jboss 等其他 Java EE 服务器

初识 BIRT

BIRT 是一个 Eclipse-based 开放源代码报表系统同 JasperReports 类似。它主要是用在基于 Java 与 J2EE 的 Web 应用程序上。BIRT 主要由两部分组成:一个是基于 Eclipse 的报表设计和一个可以加到你应用服务的运行期组件。BIRT 同时也提供一个图形报表制作引擎。

BIRT 报表文件的国际化

新建 birt 报表的过程请参考网站的其他文档,现有一个名为 internationalization_file.rptdesign 报表文件,然后在 layout 视图点击报表的空白处如下所示:注意一定是空白处,点击其他位置是不能出现这个菜单项的。

图 1. 选择报表的资源文件

基于Eclipse的Birt国际化的分析与改进(2)

时间:2011-07-03 IBM 苏春波

然后点选 resources 标签页,点击 Add 按钮来加入资源文件或者输入资源文件名称。

注意:如果在属性 Resources 中填写了 MyResources, 那么资源文件的名称要以以下规律命名:

MyResources_en_US.properties、 MyResources_zh.properties 等,资源文件定义符合 Java I18N 格式。后面的 _en_US 或 _zh d 等由参数 __locale 传递。那么资源文件要放到哪里呢?我们通过在应用的 web.xml 中定义 <param-name>BIRT_RESOURCE_PATH</param-name> 来确定资源文件的位置,这也是指定报表文件路径的参数。

报表文件国际化的实例演示

现在我们指定了 internationalization_file.rptdesign 报表文件的 Resources 为 MyResources,并建立两个 property 文件,一个中文资源文件 MyResources_zh.properties, 另一个为英文资源文件 MyResources_en_US.properties,资源文件内容如下:

MyResources_zh.properties:name=\u663E\u793A\u53D8\u91CF

MyResources_en_US.properties:name=show param

将报表文件的字段指定为资源文件中定义的键值。

图 2. 指定对应的键值

基于Eclipse的Birt国际化的分析与改进(3)

时间:2011-07-03 IBM 苏春波

然后将报表文件及所需的资源文件放到服务器对应的目录下,如:\webapps\WebViewerExample。在浏览器中输入 http://localhost:8080/WebViewerExample/frameset?__report=internationalization_file.rptdesign&sample=my+parameter&__locale=en_US显示如下:

图 3. 资源文件为英文的

然后将上面的 URL 中的 __locale=en_US 换成 __locale=zh, 显示如下:

图 4. 资源文件为中文的

基于Eclipse的Birt国际化的分析与改进(4)

时间:2011-07-03 IBM 苏春波

BIRT-console 的国际化

通常情况下,我们还是用 birt 提供的 console 来展示报表的,如果 console 提供的功能不能满足我们的要求,在上面做二次开发也是挺简单的事情,如果重新再开发一个 birt 报表的展示 console,造同样轮子的做法不是很值得提倡的。回到正题上来,我们怎样国际化 birt-console 呢?国际化文件放到哪里?是否可以将国际化文件移到一个可管理的路径下呢?接下来,我们会一一解开这些疑惑。

Birt 提供了国际化 console 的方法,国际化文件放在一个名为 viewservlets.jar 包里面,名称为 Messages.properties。如果我们要实现中文的国际化,是否放入一个中文的资源文件就可以呢?实践往往是验证疑惑最有效的方法,实际结果验证这样是不行的。下面我们来看一下 birt 实现 console 国际化部分的代码,类 BirtResources 调用的是 ViewerResourceHandle 类。

清单 1. BirtResourc

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号