Birt部署在tomcat下的方法
1、先下載birt-runtime-2.1.3.zip 地址:http://www.eclipse.org/downloads/download.php?file=/birt/downloads/drops/R-R1-2_1_3-200707051847/birt-runtime-2.1.3.zip
2、將其解壓,把目錄下的WebViewerExample文件夾複製到Tomcat主目錄下的webapps目錄下,並改名爲birtApp.
3、複製第三方軟件:
- itext-1.5.2.jar:複製到birtApp/WEB-INF/platform/plugins/com.lowagie.itext/lib
- 數據庫驅動(mysql爲例)mysql-connector-java-5.0.5-bin.jar:複製到birtApp/WEB-INF/platform/plugins/org.eclipse.birt.report.data.oda.jdbc_2.1.1.v20070705-1847/drivers
不過我用的2.1.3版本不用複製itext-1.5.2.jar,相應目錄下面都有,也不用複製其他的jar文件。但數據庫驅動的jar文件一定要複製(不過報表中沒用到數據庫訪問的話就不用了)!
如果是用tomcat6的版本,需要在工程的Web-INF/lib下放置一個commons-logging-api-1.1.1.jar的包,這個包在tomcat5.5裏有,6.0取消了這個包
4、啓動Tomcat,在瀏覽器中輸入http://lcoalhost:8080/birtApp/ 在首頁中點擊"View Example",若正常進入,則說明成功。
5、發佈做好的報表文件:將製作好的報表文件如test.rptdesign複製到birtApp下,在瀏覽器中輸入:
http://localhost:8080/birtApp/run?__report=test.rptdesign 就可以訪問了。
6、訪問報表:http://localhost:8080/birtApp/frameset?__report=報表文件路徑
這個web應用支持2個動作:
- frameset,以frameset的形式顯示報表。這個界面包含一些frame,如頁面導航,報表主體在其中的一個frame中顯示;使用形式:
http://localhost:8080/birtApp/frameset?__report=報表文件路徑&參數=........ - run,報表以一個單獨的html頁面或pdf顯示,由於這種形式沒有frmaeset,因此使用者必須自己提供相應的參數,如報表參數,頁號等。使用形式:
http://localhost:8080/birtApp/run?__report=報表文件路徑&參數=........
對於以上2個動作,以下列出可用的參數:
- __format:報表輸出格式:html或pdf,缺省是html。對於frameset不起作用。
- __isnull:指明一個參數是null,常用於字符串類型。如果提供參數且值爲空: - 對於日期和數字類型,BIRT會將它們當作null處理。 - 對於字符串,BIRT會將它作爲空字符串。因此,爲了說明某個字符串是null,通常寫爲:__isnull=參數。
- __locale:本地化選項,缺省是jvm的locale。
- __report:報表設計文件路徑。
- 報表參數:報表參數參數值對,形式:參數名=參數值。對於frameset,直接在地址欄中輸入參數名=參數值後回車,不會影響報表結果。雖然,此時選擇"運行報表"時,彈出的參數值已經改變。