Web报表FineReport实现报表部署流程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Web报表FineReport实现报表部署流程
一、报表应用目录结构
1.web应用的目录结构
报表部署分为两种,一是报表作为一个独立的应用独立部署;另一个是集成到现有应用即嵌入式部署。
不管哪种部署方式,他们的目录结构都是类似的。
如下图我们对未包含报表的应用及包含报表的应用目录作一个比较:
2.独立部署
FineReport安装目录下的WebReport目录就是一个标准的应用,因此,若用户希望将报表作为一个独立的应用进行部署的话,可以直接使用WebReport目录进行独立部署。
3.嵌入式部署
若用户希望将报表集成到自己的应用中的话,则可以对应上图“部署报表后的应用”目录结构,将对应的报表文件拷贝到相应目录即可,请看嵌入式部署。
二、独立部署(发布)
1.发布应用
应用通常以文件夹或war包得形式发布,Web应用服务器不同,发布方式不同:
如Tomcat服务器只需要将Web应用拷贝到%FR_HOME%\webapps目录下,重启tomcat即发布成功;
而Websphere服务器需要先将Web应用打成war包,然后在websphere控制台进行配置发布。
各个服务器下部署报表应用我们会在下面章节中详细介绍。
2.独立部署(发布)
部署就是将FineReport应用集成到新的Web工程
把FineReport_8.0安装目录下的WebReport文件拷贝到%Tomcat_HOME%/webapps/下:
应用名WebReport可以根据需要改变,如可以改为“FineReport”。
3.访问报表
报表应用发布(部署)成功后,便可以在客户端浏览器中访问了。
在客户端浏览器中输入访问地址
http://ip:端口/appName/ReportServer?reportlet=GettingStarted.cpt,发送请求给Web应用服务器如tomcat;
Web应用服务器会将请求信息发送给报表servlet;
报表servlet根据请求信息,如获取希望查看的模板名称reportlet=GettingStarted.cpt,在后台计算生成GettingStarted.cpt的内容,返回给Web应用服务器;
最后Web应用服务器将结果返回给客户端浏览器,浏览器将报表结果呈现给我们。
注:若Web应用服务器可以在外网进行访问,那么我们就可以外网访问报表了。
三、嵌入式部署
1.描述
由报表应用目录结构章节可知,若希望将报表部署到已有的工程中时,需要按照下图所示的目录结构,将报表相关的文件拷贝到相应目录:
2.复制目录
2.1全部复制
为了简便,可以直接将%FineReport_HOME%\WebReport\WEB-INF目录下面的classes,lib,plugins,reportlets,resources五个目录复制到%Tomcat_HOME%
\webapps\jsp-examples\WEB-INF下。
注意:%FineReport_HOME%\WebReport\WEB-INF\classes文件夹下面可能会放置一些网络报表的class文件,在和您的工程集成时并无冲突。
有关网络报表的介绍,可以在二次开发文档中找到。
2.2部分复制
也可以选择性的只复制必要性文件至已有工程中。
▪必须复制的文件
fr-chart-8.0.jar、fr-core-8.0.jar、fr-performance-8.0.jar、fr-platform-8.0.jar、
fr-report-8.0.jar:包含了报表服务的所有功能,必须拷贝至WEB-INF\lib下;
fr-third-8.0.jar:包含了报表服务引用的第三方插件,必须拷贝至WEB-INF\lib下;
plugin-com.fr.plugin.mdnl-0.jar、plugin-com.fr.plugin.mdnl-1.jar、
plugin-com.fr.plugin.mdnl-2.jar、plugin-com.fr.plugin.oldui-1.jar、plugin-com.fr.plugin.sap-0.jar、plugin-com.fr.plugin.sap-3.jar等plugin开头的jar:包含了报表插件管理里安装的所有插件,必须拷贝至WEB-INF\lib下;
plugins:该文件夹包含了报表管理里安装的所有插件的jar包和配置信息,拷贝至WEB-INF下面。
reportlets:该文件夹为FineReport服务器规定的,不能修改,且必须为小写,其下可
以建立子目录,所有报表模板cpt文件必须保存在reportlets文件夹下,且reportlets文件必须放在WEB-INF\下;
resources:该文件夹也是FineReport服务器规定的,不能修改,且必须为小写,下面包含了报表服务器的配置信息,拷贝至WEB-INF下面。
以上文件或文件夹是必须拷贝到已有应用目录下的。
▪选择性复制的文件
classes:该文件夹是应用服务器规定的,主要作用是存放.class文件。
若对FineReport 进行了二次开发,如自定义函数、程序数据源、程序网络报表等,也需要将编译后的class 类文件拷贝到该文件夹下;
数据库驱动包:若报表中使用了JDBC连接了数据库,需要将对应的数据库驱动包如Oracle数据库的驱动ojdbc14.jar拷贝到WEB-INF\lib下,其他数据库驱动同样;
3.修改web.xml文件
在已有工程的web.xml中添加相应的servlet与servlet-mapping子元素。
将%FineReport_HOME%/WebReport/WEB-INF下的web.xml中如下的部分复制
到%Web_home%/webapps/Web工程名/WEB-INF下的web.xml中,在最后一个servlet之后插入:
<servlet>
<servlet-name>ReportServer</servlet-name>
<servlet-class>com.fr.web.ReportServlet</servlet-class>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>ReportServer</servlet-name>
<url-pattern>/ReportServer</url-pattern>
</servlet-mapping>
如上代码复制放到如下目录下面的配置文件里面结果如下:
注:web.xml中对于元素出现的顺序敏感。
servlet必须出现在servlet-mapping标志之前。
所有将所有servlet集合放置在servlet-mapping之前以便于管理与程序调用。
4.检测是否部署成功
可以通过浏览报表确定是否部署成功
重新启动Tomcat,启动浏览器,在地址栏输入
h ttp:/ip:服务器端口号/项目所在目录/ReportServer,能成功进入下图所示页面,则表明FineReport应用集成web应用并部署Tomcat服务器成功:。