1. 概述
1.1 版本
FineReport 版本 |
---|
10.0 |
1.2 问题描述
在 独立部署 中介绍了通过将报表工程放置在 Tomcat 服务器指定位置来进行部署。
但有的用户为了服务器上文件的有效管理,需要将报表目录放在特定的位置,而不将报表文件夹拷贝到 Tomcat 服务器安装目录%Tomcat_HOME%\webapps下。
1.3 解决思路
创建 FR.xml 文件并放在指定位置
拷贝 tool.jar 至指定位置
即可实现报表工程不放在服务器安装目录下,也可以进行部署。
2. 示例
2.1 准备工作
1)用户需提前下载并安装 JDK 和 Tomcat 服务器,下载和安装方法可以自行查阅相关资料。
需要注意的是 Tomcat 服务器版本和 JDK 版本之间存在对应关系,详情参见:JDK和Tomcat版本
2)用户需提前下载安装好一个额外的 FineReport 设计器,本文示例中本地 FineReport 设计器安装在 F 盘,webroot 文件夹所在路径为:F:\FineReport_10.0\webapps\webroot;Tomcat 工程路径为E:\tomcat-win64FR
注1:Tomcat 重定向的工程,例如本文示例中在 F 盘的本地工程,需要额外准备。
注2:在这种部署方式下,不能同时打开 Tomcat 和设计器,否则会导致报错。
2.2 创建 xml 文件
2.2.1 具体步骤
1)在%Tomcat_Home%\conf\Catalina\localhost下新建文件 FR.xml(FR 为访问链接http://ip:端口/工程名/decision中的工程名),内容如下所示:
<Context path="/FR" reloadable="false" docBase="F:\FineReport_10.0\webapps\webroot" />
下载请参见:FR.xml
path | 值为「/xml 文件的名称」 |
---|---|
docBase | 所安装 FineReport 工程的 webroot 文件夹路径 |
2)path 的值为「/xml 文件的名称」,如下图所示:
注:如果 conf 下面没有 Catalina 文件夹,直接新建 Catalina 文件夹即可。
2.2.2 注意点
%Tomcat_HOME%\webapps下不能有 FineReport 工程的 webroot 文件夹,本文示例 webroot 文件夹所在路径为:F:\FineReport_10.0\webapps\webroot,如下图所示:
否则会导致工程二次加载,工程资源互相占用。包括并不限于的影响:
模板文件保存失败,模板文件后缀加上了.tmp,甚至模板文件丢失。
工程注册信息里提示:注册文件被另一台服务器占用。
2.3 拷贝 tools.jar
将%JAVA_HOME%\jdk\lib下的 tools.jar 拷贝到%Tomcat_HOME%\lib下,如下图所示:
2.4 启动 Tomcat 服务器
注:启动 Tomcat 时,不能同时打开 FineReport 设计器,否则会报错。
执行%Tomcat_HOME%\bin下的startup.bat (Windows 系统)或 startup.sh(Linux 系统)文件,启动 Tomcat 服务器,如下图所示:
2.5 访问数据决策系统
访问数据决策系统,在浏览器中输入访问地址http://ip:服务器端口号/FR/decision,其中 FR 就是部署时定义的报表应用名,打开决策系统配置页面,即部署成功。如下图所示: