1. BIRT 概述
BIRT是一個(gè)Eclipse-based開(kāi)放源代碼報(bào)表系統(tǒng)。它主要是用在基于Java與J2EE的Web應(yīng)用程序上。BIRT主要由兩部分組成:一個(gè)是基于Eclipse的報(bào)表設(shè)計(jì)和一個(gè)可以加到你應(yīng)用服務(wù)的運(yùn)行期組件。BIRT同時(shí)也提供一個(gè)圖形報(bào)表制作引擎。
使用BIRT,能制作出多樣化的報(bào)表到你的應(yīng)用中。比如:列表 lists ,圖表 charts,混合報(bào)表 Compound Reports,交叉表(二維表)Crosstabs(二維報(bào)表目前在BIRT 2.1.1 還未實(shí)現(xiàn),但在以后的版本中將會(huì)實(shí)現(xiàn)此功能)。
2. BIRT的安裝
2.1>birt的安裝
Eclipse 3.1 支持 BIRT 2.0
Eclipse 3.2 支持 BIRT 2.1
目前我使用的版本是BIRT 2.1.1,BIRT的安裝有很多的方法。
方法一:
到Eclipse的官方網(wǎng)站http://download.eclipse.org/birt/downloads去下載 BIRT 插件(birt-report-designer-all-in-one-2_1_1),解壓后,它就是一個(gè)擁有 BIRT插件的Eclipse。如果你已經(jīng)安裝了Eclipse,那么把下載的文件夾的內(nèi)容拷到所對(duì)應(yīng)的 Eclipse 的文件夾里(plugins和features兩個(gè)目錄),之后的第一次啟動(dòng)是通過(guò)DOS進(jìn)入到Eclipse目錄,啟動(dòng) Eclipse -clean 命令,此命令是清除 Eclipse 緩存里的記錄并啟動(dòng)Eclipse。這也是最簡(jiǎn)單的安裝BIRT方法。
方法二:
BIRT 2.1開(kāi)始,可以在 Eclipse 里直接下載。[幫助]à[軟件更新]à[查找并安裝]
方法三:
如果你的 Eclipse 已經(jīng)安裝或者不想使用方法一安裝,可以進(jìn)行分別安裝的方法。EMF, GEF 和 BIRT 都是需要通過(guò) Eclipse download page下載的。請(qǐng)注意以下的配置要求:
- BIRT 2.0.2
- Eclipse 3.1
- GEF 3.1.
- EMF 2.1.
- JRE 1.4.2/JRE 1.5.
- BIRT 2.1/2.1.1
- Eclipse 3.2.
- GEF 3.2.
- EMF 2.2.
- JRE 1.4.2/JRE 1.5.
- BIRT 2.2M4 and higher
- Eclipse 3.3.
- GEF 3.3.
- EMF 2.3.
- JRE 1.5.
GEF:圖形編輯框架,是一個(gè)通過(guò) BIRT UI 使用的Eclipse 插件
EMF:用來(lái)制作圖表的框架
具體的安裝和配置請(qǐng)參考 Eclipse官方網(wǎng)站 這里我還推薦一個(gè)BIRT 2.0.1的安裝視頻 希望對(duì)大家有所幫助。
注意:iTextAsian.jar 是為了支持用PDF輸出時(shí)亞洲人的字體。prototype.js 是安裝 BIRT 2.0.2 或者更早的版本使用的,目前版本不需要了。
提示:我個(gè)人使用的是方法一,首先安裝比較方便,其次如果使用方法二,在Eclipse [幫助]à[幫助內(nèi)容] 里沒(méi)有關(guān)于 BIRT 的幫助文檔,這樣對(duì)學(xué)習(xí)不是很方便。
2.2 birt版本升級(jí)
1.刪除在 plugins 目錄下的所有以 org.eclipse.birt 開(kāi)頭的文件。
2.按照上面的方法一進(jìn)行安裝。
3.重新啟動(dòng) Eclipse -clean
2.3 語(yǔ)言包安裝
目前 BIRT的2.1.1 已經(jīng)有中文語(yǔ)言包。下載完畢以后把對(duì)應(yīng)的目錄 copy 到對(duì)應(yīng)的 Eclipse 目錄下,然后 Eclipse -clean 啟動(dòng)。
3. BIRT應(yīng)用
在這里我提供了一個(gè) “BIRT中文教程”,在Eclipse官方網(wǎng)站也有它的演示視頻,Customers.rptdesign 是做好的報(bào)表。
JDBC Drivers
以上例子介紹的是使用“示例數(shù)據(jù)庫(kù)”的數(shù)據(jù)源,在大多數(shù)情況下我們使用的是自己的JDBC driver,下面介紹連接 Oracle 數(shù)據(jù)庫(kù)。
打開(kāi) Eclipse 后進(jìn)入 [窗口]à[打開(kāi)透視圖]à[報(bào)表設(shè)計(jì)],新建項(xiàng)目 [文件]à[新建]à[項(xiàng)目],選擇“業(yè)務(wù)智能和報(bào)表工具”à“報(bào)表項(xiàng)目”,起項(xiàng)目名。新建的項(xiàng)目上,右鍵 新建報(bào)表,給報(bào)表起名字,報(bào)表的后綴名是 .rptdesign
[數(shù)據(jù)源]à[新建數(shù)據(jù)源],選擇“JDBC數(shù)據(jù)源”(別忘了給數(shù)據(jù)源起名字),“管理驅(qū)動(dòng)程序”à“添加”,把所需要的數(shù)據(jù)庫(kù) jar 包添加進(jìn)來(lái)。選擇oracle.jdbc.driver.OracleDriver ( v1.0),寫(xiě)上正確的數(shù)據(jù)庫(kù) URL,用戶(hù)名,密碼,點(diǎn)擊“測(cè)試連接”,顯示 連接成功。
報(bào)表的種類(lèi)有很多,具體的制作過(guò)程參考[幫助]à[幫助內(nèi)容]
提示:交叉表即二維報(bào)表在目前BIRT 2.1.1 還未實(shí)現(xiàn),但在以后的版本中正在計(jì)劃實(shí)現(xiàn)此功能。
4. BIRT部署
BIRT 2.1.1所對(duì)應(yīng)使用的部署工具是birt-runtime-2_1_1,可以到 Eclipse 官方網(wǎng)站下載。
4.1. tomcat 部署
我使用的版本是 tomcat 5.5,步驟如下:
1) mail.jar activation.jar拷到Tomcat 5.5\common\lib
2) iTextAsian.jar itext-1.3.jar拷到
WebViewerExample\WEB-INF\platform\plugins\com.lowagie.itext\lib
3) 連接數(shù)據(jù)庫(kù)的包拷到
WebViewerExample\WEB-INF\platform\plugins\org.eclipse.birt.report.data.oda.jdbc_2.1.1.v20060922-1058\drivers
4) WebViewerExample整個(gè)目錄copy 到 Tomcat 5.5\webapps下,可以更改文件夾名。
5) 完成的報(bào)表可以直接復(fù)制到根目錄下,也可以新建文件夾目錄。
現(xiàn)在BIRT支持兩種瀏覽報(bào)表模式,frameset是支持顯示分頁(yè)的,采用Ajax技術(shù)。run暫不支持顯示分頁(yè),直接輸出HTML流。比較一下它們的區(qū)別,如下:
http://localhost:8080/WebViewerExample/frameset?__report=Customers.rptdesign
http://localhost:8080/WebViewerExample/run?__report=Customers.rptdesign
注意:
a) 問(wèn)號(hào)后面的是雙下劃線
b) 以上報(bào)表是放在根目錄下,如果是放在自己新建的目錄比如 myreport 下URL應(yīng)是:
http://localhost:8080/WebViewerExample/run?__report=myreport/Customers.rptdesign
4.2. Weblogic Server 部署
我使用的版本是 Weblogic Server 9.2,它是 BEA WebLogic 產(chǎn)品的一部分。BEA WebLogic Server 是一個(gè)功能豐富、基于標(biāo)準(zhǔn)的現(xiàn)成的企業(yè) J2EE應(yīng)用服務(wù)器。
Weblogic Server 有很多的域組成,medrec
和 wl_server 是其中自帶的域,也可以自己創(chuàng)建新的域。域中可以包含許多服務(wù)器,在服務(wù)器中可以部署許多的應(yīng)用程序。域有一個(gè)默認(rèn)的服務(wù)器,它是管理服務(wù)器。每個(gè)域中的管理服務(wù)器是唯一的,其他創(chuàng)建的服務(wù)器叫受管服務(wù)器。
Weblogic Server 的安裝就不多做介紹了,主要介紹它的配置和部署。下面介紹一下新建域和部署的步驟:
1) 運(yùn)行開(kāi)始 -> 程序 -> BEA Products -> Tools -> Configuration Wizard
2) 選擇 Create a new WebLogic domain,Next。
3) 在 Select Domain Source 界面保持默認(rèn),Next。
4) 在 User name 處輸入用戶(hù)名,如 user,password 輸入密碼,如12345678(密碼要求 8 位),Next。
5) 在 Configure Server Start Mode and JDK 界面中保持默認(rèn),即 JDK 選擇的是“Sun SDK 1.5.0_04 @ C:\BEA\jdk150_04”,注意這里若選擇“Other JDK”配置比 SDK 1.5.0_04 更高的版本,服務(wù)器啟動(dòng)時(shí)將會(huì)出現(xiàn)異常,所以最好保持默認(rèn),然后 Next。
6) 在 Customize Environment and Services Settings 界面中默認(rèn)為 No,Next。
7) 在 Domain name 處輸入 mydomain,點(diǎn)擊 Create。
8) 完成后點(diǎn)擊 Done 關(guān)閉 Configuration Wizard 對(duì)話框。
9) 運(yùn)行開(kāi)始 -> 程序 -> BEA Products -> User Projects -> mydomain -> Start Admin Server for Weblogic Server Domain,啟動(dòng)創(chuàng)建域的服務(wù)器。如果最后顯示 <Server started in RUNNING mode> 則說(shuō)明服務(wù)器啟動(dòng)成功。
10) 在地址欄輸入 http://localhost:7001/console 進(jìn)入管理控制臺(tái),輸入剛才的用戶(hù)名和密碼。點(diǎn)擊 更改中心 的[鎖定并編輯],域結(jié)構(gòu) 中的[部署],點(diǎn)擊[安裝]。找到你要部署的應(yīng)用程序,之后都為默認(rèn),最后點(diǎn)完成。在更改頁(yè)面上點(diǎn)擊[保存],完成所需的更改后,單擊 更改中心 中的[激活更改]。注意:只有點(diǎn)擊了[激活更改]后才真正保存了更改。某些在管理控制臺(tái)中所做的更改在激活后立即生效。有些更改需要重新啟動(dòng)此更改影響到的服務(wù)器或模塊。后面的這些更改稱(chēng)為非動(dòng)態(tài)更改。非動(dòng)態(tài)更改在管理控制臺(tái)中由此警告圖標(biāo)表示: 如果對(duì)非動(dòng)態(tài)配置設(shè)置進(jìn)行了編輯,則只有在重新啟動(dòng)服務(wù)器之后,所有對(duì)動(dòng)態(tài)配置設(shè)置所進(jìn)行的編輯才會(huì)生效。
11) 點(diǎn)擊 域結(jié)構(gòu) 中的[部署],啟動(dòng)剛才部署的應(yīng)用程序。
12) 在地址欄中輸入 http://localhost:7001/部署程序名在web中顯示應(yīng)用程序。
BIRT的部署方法基本和上面步驟相同,注意一點(diǎn),在部署前將
commons-logging.jar 拷入 WebViewerExample 中的 lib 包中,否則最后顯示會(huì)報(bào)錯(cuò)。
Weblogic Server 的部署方法有很多,weblogic.Deployer、管理控制臺(tái)、WLST 等等。剛才介紹的管理控制臺(tái)的部署,它是一個(gè)可視化的界面,用起來(lái)比較方便。
推薦:在這里推薦使用一種應(yīng)用程序的目錄管理方法,新建目錄結(jié)構(gòu)如下:
部署完后將會(huì)再此目錄下自動(dòng)產(chǎn)生plan.xml文件
|
用此目錄有利于很好的管理配置文件。
關(guān)于 Weblogic 的更多詳細(xì)資料,我這里推薦幾個(gè)比較好的官方學(xué)習(xí)網(wǎng)站:
www.bea.com.cn bea的產(chǎn)品網(wǎng)站
edocs.bea.com.cn bea的比較系統(tǒng)的學(xué)習(xí)網(wǎng)站
dev2dev.bea.com.cn 一般介紹bea的最新技術(shù),動(dòng)態(tài)等的網(wǎng)站
4.3. web外觀顯示
部署好的報(bào)表頁(yè)面顯示樣式是固定的,在多數(shù)情況下我們都希望修改外觀,下面將對(duì)此做簡(jiǎn)單介紹。
Webcontent是主要文件夾:
1) Webcontent中的ajax目錄,完成了在web上顯示的報(bào)表分頁(yè)的功能。
2) Styles目錄中的style.css是整個(gè)報(bào)表在web上顯示的外觀,包括工具條顏色,字體。文件注釋很清楚,具體修改可以參見(jiàn)注釋。
3) pages目錄pages/control/ NavigationbarFragment.jsp 分頁(yè)那一條工具欄的 JSP pages/control/ ToolbarFragment.jsp 工具按紐JSP,可以修改以保留自己想要使用的功能按紐。pages/control/ ProgressBarFragment.jsp 它是顯示剛開(kāi)始讀取報(bào)表時(shí),顯示條的樣式。
4) Layout目錄 FramesetFragment.jsp 可以修改報(bào)表標(biāo)題。
在 WEB-INF/web.xml文件中,BIRT_VIEW_REPORT_ROOT 是配置報(bào)表路徑的屬性,如果沒(méi)有配置則是默認(rèn)路徑:$tomcat$\webapps\birt
目前在web上顯示的所有的都是英文。項(xiàng)目有一個(gè)資源文件,打包在lib/viewservlets.jar中,…/…/resource/messages.properties文件中。顯示中文的解決方法是,用unicode轉(zhuǎn)換器把要顯示的中文事先轉(zhuǎn)換好,然后替換資源文件中的英文。
5. BIRT總結(jié)
BIRT是目前比較常用也是比較方便,效率較高的報(bào)表制作工具。當(dāng)然其發(fā)展時(shí)間不長(zhǎng),所以還有很多的缺陷和未完善的地方,之后的版本也在不斷改進(jìn),因此我也將會(huì)一直跟蹤它的技術(shù)發(fā)展,不斷更新我的文檔。