設計好的報表是如何在 web 上顯示的

xiaohuihui發表於2019-12-04

潤乾報表主要用來開發在 java web 端呈現的報表工具,設計器為桌面版,那麼開發後的報表如何釋出到 web 端是使用者較為關心的問題。

潤乾報表 web 端釋出,採用 Taglib 方式,只需要在 jsp 內引入標籤庫,呼叫具體的標籤(如,report:html)釋出即可,可嵌入任何 jsp 頁面。

具體怎麼做?

方法一:

一般情況下,使用潤乾自帶 demo 下提供的 Jsp 可直接實現釋出報表的功能。這裡有兩個 jsp 介紹一下區別和怎麼用:

1、 demo/reportJsp/preview.jsp

該 jsp 主要用於設計器內直接釋出到 web 端預覽,因為使用該 jsp 時,url 會把報表模板的完整路徑傳入,所以不論報表檔案放到什麼位置,都不會出現路徑問題,方便除錯。 但僅建議在設計器開發階段 web 端預覽時使用。

2、 demo/reportJsp/showReport.jsp

該 jsp 與 preview.jsp 的區別在於,用該 jsp 釋出的報表檔案,必須是在 raqsoftConfig.xml 內配置的報表路徑或其子目錄才可,否則找不到報表檔案。正式環境一般都會把報表模板放置在應用內,便於維護。 所以在正式環境(當然包含脫離設計器 demo 環境搭建的測試環境)一定要用 showReport.jsp。

其中,呼叫 preview.jsp 的 url 不用過多說明,在瀏覽器點預覽即可檢視具體內容。如果換用 showReport.jsp,這裡說明的是,原則上只需要 reportJsp/showReport.jsp?rpx=xxx.rpx 即可,如果還需要帶引數,則增加 &pname1=pvalue1&pname2=pvalue2 …。

注:以上兩個 jsp,其核心還是引入釋出報表的標籤部分,如

1png

方法二

自定義 jsp,引入 taglib 自由釋出,具體過程如:

1、 定義一個 jsp 檔案

這裡可新建、工具生成或複製其他 jsp 檔案,甚至建一個空白的檔案後字尾改為 jsp 都可以。

如透過 idea 生成 jsp 如下:

<%--  
 Created by IntelliJ IDEA.  
 User: hyl  
 Date: 2019/11/19  
 Time: 13:17  
 To change this template use File | Settings | File Templates.  
--%>  
<%@ **page** contentType="text/html;charset=UTF-8" language="java" %>  
<html>  
<head>  
 <title>Title</title>  
</head>  
<body>  
  
</body>  
</html>

2、 引入報表釋出標籤庫

在第一步的空白 jsp 內,增加發布潤乾報表所使用的標籤庫檔案(預設放在 web-inf 下)。

<%@ taglib uri=“/WEB-INF/raqsoftReport.tld” prefix=“report” %>

2png

3、 定義標籤屬性,釋出報表

<report:html name=“report1” reportFileName=“xxx.rpx”/>

3png

第 2 步中定義的標籤字首為 report,釋出報表的標籤為 html,所以這裡定義為 report:html 作為識別,具體的參考教程()。

透過截圖可以看出,只需要設定個 name 值,再設定好要釋出的報表名字(reportFileName 屬性)就可以了。

4、 把 jsp 釋出到應用,檢視結果

以設計器內建 demo 應用為例,放置到 reportJsp 下,訪問 url 結果(xml 路徑下有對應的報表模板)如下

4png

透過以上步驟,就可以自定義 jsp 並完成報表的釋出,如果還需要傳參、生成列印匯出等其他功能,只需對應標籤使用文件增加對應屬性即可。不論哪種方式,透過標籤釋出報表後,有請求時,均會實時計算並將結果生成 html 指令碼在頁面展現出來。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69900830/viewspace-2666951/,如需轉載,請註明出處,否則將追究法律責任。

相關文章