帆软9.0升级10.0(摘自帆软官方文档)

1. 描述

现提供一个独立的辅助升级程序,可以将 9.0 的 Web 工程升级到 10.0 工程,包括 JAR 包、各类配置文件、FineDB 数据表等的兼容升级。

 

1) 提供免安装版程序,点击即可运行,无需安装卸载。

2)程序支持简体中文、英文、繁体中文。

3)支持 Windows、Linux 主流操作系统。

注:请在升级前仔细阅读 9-10兼容说明

2. 获取升级工具

由于FineReport功能不断优化,产品不断迭代升级,因此升级工具也在不断更新。

 帆软技术支持提供

3. 升级前准备

1)工程备份:升级之前请先关闭待升级的工程,对此工程进行备份。

2)以管理员方式启动升级工具,保证升级工具能在工程所在的磁盘创建文件夹(一般不要将工程放在C盘内)。

3)当前只支持JDK1.8,所以升级工程前务必查看JDK版本(如果环境不允许改动,请将工程拷贝到jdk1.8环境中升级再拷贝回来),否则升级成功后会出现部署报错

4)内网离线环境下,从 9.0 升级上来的工程,无法升级插件商城脚本

      升级成功后需要手动替换脚本文件scripts,替换路径为:%FR_HOME%/webapps/webroot/scripts,替换后重启服务器,并且清除浏览器缓存

注:点击下载 scripts:scripts.zip

5)如待升级工程进行过平台数据库迁移,升级过程中需要确保能够连接到外接数据库。

6)9.0及以前版本同步数据集中密码可以选择内置MD5加密,升级后如仍需使用 MD5 加密请参见:MD5 加密方式

      如果以前用户存的是明文,升上来以后,不再能登录上了,只能去重置;其他所有自定义加密类升级到10.0都需要重新适配

7)部分插件未支持新版本,在升级前请进行删除。

8)单点登录的客户升级到 10.0 要进行重新适配。

9)深度集成的客户,建议把数据先拿到独立部署的工程里面,升级完成后,另行适配10.0。

10)非简体中文系统用户升级前,务必要手动备份数据库信息。升级工具会删除不同语言下的权限配置。

11)Linux 非简体中文环境下,2018-02-28~2018-09-06 之间的 9.0 JAR 包与10.0无法完全兼容,需要先将 9.0 JAR 升级最新,再使用升级工具升级到 10.0。

4. 升级步骤

4.1 升级工具使用

1)右键点击升级工具,选择以管理员身份运行。如下图所示:

 

2)打开程序后,进行语言选择,可选择简体中文、繁体中文、英语。如下图所示:

 

3)点击确定,进入 FineReport 10.0 升级工具的安装程序向导,选择待升级的 9.0 工程文件夹。如下图所示:

注:工程文件夹一般为%FR9.0_HOME%/WebReport,是包含WEB-INF的文件夹。

 

注:如果所选目录未检测到 WEB-INF 文件夹,则提示请选择包含 WEB-INF 目录的WEB容器文件夹。

 

注:如果选择的工程版本非 9.0,则提示仅支持 9.0 的工程升级。 

 

4)点击下一步,进入原工程备份界面,选择原文件夹备份保存的地址,如下图所示:

 

注:备份地址不允许为空,为空时提示您必须输入备份目录。

 

5)点击下一步,提示即将开始升级,在升级过程中请勿关闭本程序,同时不要对原工程做任何编辑修改操作。如下图所示:

 

6)点击下一步,启动备份升级,如下图所示:

 

注:备份成功后,在设置好的文件夹下生成 WebReport_bak 的备份文件。

 

7)升级结束后,界面如下图所示:

 

8)点击完成后,9.0 中的项目文件 WebReport 就是被升级后的文件。如下图所示:

 

4.2 升级后部署

1)将 %JAVA_HOME%/jdk/lib 下的环境变量tools.jar 放到%TOMCAT_HOME%/lib或%TOMCAT_HOME%/webapps/工程名/WEB_INF/lib下,如下图所示:

注:如不执行此步骤,服务器部署过程中会报错 500,详情请参见:服务器部署需引入 tools.jar

 

注:若环境变量指向的%JRE_HOME%/bin 下无attach.dll 文件,还需将%JAVA_HOME%/jdk/jre/bin 下的attach.dll 拷贝到此路径下。

2)将升级后的文件部署到服务器上,即可看到 9.0 工程升级到了 10.0 并保留数据,如下图所示:

注:此处是将升级后的 WebReport 文件夹名称改为了 webroot。

 

5. 常见问题

5.1 升级工具闪退

问题描述:升级过程中,可能会因为一些原因导致升级工具闪退。

解决方案:如发生闪退情况,请联系技术支持解决,并发送error.log文件,文件位置如下:

1)windows:error.log在升级工具同级文件夹生成

 

2)linux:不生成日志文件,升级过程在控制台输出日志,需要升级前手动保存控制台信息,如xshell

 

5.2 Unsupported major.minor version 52.0

问题描述:工程可以升级成功,但升级后部署报错:com/sun/tools/attach/VirtualMachine:Unsupported major.minor version 52.0

原因分析:升级工具仅支持 JDK1.8 环境,其他版本的 JDK 环境不支持

解决方案:

1. 直接更换为 JDK1.8 的环境再升级

2. 客户的工程拷贝到另外一个 JDK1.8 的环境进行升级,完成后再拷贝回其他的环境

5.3 权限丢失

问题描述:2018-02-28~2018-09-06之间的 JAR 包,Linux 英文/繁体中文环境下,所有部门所有职务存在遗留问题,导致权限会存在所有部门所有职务或者All DepartmentAll Post上。

解决方案:由于升级工具会根据 JAR 包时间以及升级的语言环境升级对应的权限,因此直接将9.0 JAR升级至最新,再使用升级工具升级到 10.0 即可。

5.4 端口被占用

原因分析:2018-11-06及之后的 JAR 包。10.0 工程有两个端口,一个是容器的端口:默认为 8075,另一个是 websocket:默认为 38888。当同一个设备上有不止一个 10.0 工程时,两个端口不能同时相同,否则会出现端口被占用报错的问题。

解决方案:工程端口被占用的处理方法

5.5 其他说明

1)只提供对 Web 工程的升级,不提供对完整设计器的升级。设计器如果需要升级,可以先全新安装 10.0,然后将老设计器下的工程升级到 10.0 ,将升级后的工程拷贝到新安装的 10.0 设计器目录下(也就是将 10.0 webapps 目录中的 webroot 文件替换为升级后的工程文件)。

2)如果一个 Web 工程已经升级过,不管是否升级成功,都无法再次运行升级工具来升级。只能通过已备份的 9.0 工程重新执行升级。

3)升级到 10.0 后,迁移过的 FineDB 会从数据库回退到原先的 FineDB ,需要重新迁移。

4)升级工具不能跨版本升级,如 8.0 工程想升级到 10.0,需要把工程先升级到 9.0,再从 9.0 升级到 10.0。

5)2019 年 4 月 15 号及之后的升级工具支持官方的数据集类插件,支持列表如下:

  插件

  多维数据集

  SAP 数据集

  JSON 数据集

  MongoDB 数据集

  新 SAP BW 数据集

  螺旋数据集

原文地址:https://www.cnblogs.com/zsf-note/p/11576509.html