1. 概述
1.1 版本
报表服务器版本 | 功能变更 |
---|---|
11.0.1 | 新增驱动管理功能 |
11.0.5 | 默认禁止通过驱动管理上传驱动 支持通过 SystemConfig.driverUpload 参数控制是否允许上传新驱动 |
11.0.24 | 新增驱动加载顺序配置项 |
1.2 应用场景
在连接 FineReport 和数据库时,可能会因为产品未内置对应版本的数据库驱动而连接失败。
1.3 功能简介
用户可使用「驱动管理」功能,上传对应的驱动。「驱动管理」使用的是热加载,上传驱动后不需要重启 FineReport 即可直接使用驱动 。
当遇到一些驱动导致的问题后,可以快速修改驱动加载方式从而能够实现快速的连接。默认选优先加载当前上传驱动,如下图所示:
优先加载当前方式上传驱动:先加载驱动管理的jar:WEB-INF/drivers/hive/**.jar,若无对应文件则加载应用的jar:WEB-INF/lib/**.jar。
仅加载当前方式上传驱动:仅加载驱动管理的jar:WEB-INF/drivers/hive/**.jar。
2. 开启驱动上传功能
由于大部分用户对工程安全性要求很高,FineReport 默认禁止通过驱动管理上传驱动。
上传时会报错:不允许上传驱动jar包,可以修改SystemConfig.driverUpload配置值开启该功能
因此使用驱动管理前,需要将帆软应用配置库的fine_conf_entity表中的参数 SystemConfig.driverUpload 设置为 true
具体操作步骤请参考下文
2.1 新建数据连接
管理员登录数据决策系统,点击「管理系统>系统管理>常规」。
若外接数据库显示「待配置」,则 FineDB 数据库信息可参见 FineDB 数据库简介。
若外接数据库显示「已配置」,点击即可查看外接finedb数据库的信息。
点击「管理系统>数据连接>数据连接管理」,新建一个数据连接,数据连接名称为 FineDB,数据库相关配置信息可根据上文获取。
注:数据连接名称不可修改,否则下面的模板可能无法使用。
2.2 填报更新字段
注:远程连接步骤可参考:远程设计 。
使用设计器远程连接该工程,填报预览该模板:finedb字段修改.cpt
1)如果填报页面上存在字段 SystemConfig.driverUpload,确认字段值为 true,配置完成。
2)如果填报页面数据为空,说明 SystemConfig.driverUpload 字段不存在,需自行添加。点击「增加记录」按钮,新增一条记录即可。
其中,ID 为SystemConfig.driverUpload,value 为 true,点击「提交」,如下图所示:
2.3 重启工程
填报提交成功后,重启工程。重启后再次登录数据决策系统,即可通过「驱动管理」上传驱动。
3. 操作步骤
3.1 上传数据库驱动
1)管理员登录数据决策系统,点击「管理系统>数据连接管理>驱动管理」,如下图所示:
2)点击「新建驱动」,输入名称方便之后与其他驱动区分。这里我们要上传 PostgreSQL 的驱动,可以命名为「postgresql驱动」,如下图所示:
3)点击「上传驱动」,将数据库驱动上传上去。如下图所示:
注:数据库驱动可以在对应数据库的帮助文档下载,也可以让数据库管理员提供。
4)点击下拉按钮,选择一个刚刚上传的驱动,点击「保存」,如下图所示:
注1:若有多个驱动jar包,不清楚选择哪个驱动,可以咨询对应的数据库管理员。
注2:上传的驱动位于 %FineReport%\webapps\webroot\WEB-INF\drivers 下。
3.2 使用上传的数据库驱动
1)在「数据连接管理」界面点击「新建数据连接」,新建一个 PostgreSQL 数据连接,如下图所示:
2)驱动选择「自定义」,在后方下拉选择刚刚上传的 postgresql驱动 ,并填入其他连接信息,详细请参见 Postgresql数据连接 。如下图所示:
3)点击测试连接,可以看到数据库可以成功连接,如下图所示:
3.3 删除驱动
若要删除某个已存在的数据库驱动,可进入驱动管理界面直接点击删除按钮,如下图所示:
4. 历史版本
11.0.1及之前版本,无驱动管理功能,用户如需上传驱动,可通过手动上传的方法
将下载好的驱动包拷贝到%FR_HOME%\webapps\webroot\WEB-INF\lib路径下,重启报表服务器后驱动生效。如下图所示:
注:若重启后驱动不生效,可能是由于在该目录下存在该驱动的其他版本,需要手动删除其他版本,以防冲突。