未注册或者需要注册码
访问报表时出现“报表系统尚未注册”的提示信息或者“你需要一个注册码”之类的信息,表明你现在使用的报表还未进行授权注册或者授权不成功。如下图所示
问题原因:报表系统中没有授权文件(FineReport.lic)、授权文件已过期、授权文件和对应的帆软的jar包版本不匹配导致授权不成功
解决方法:
一、检查报表应用的WEB-INF/resources目录下是否有FineReport.lic文件;
二、可以通过报表的决策系统中的“注册信息”中查看授权文件的有效期,看是否已过期;
三、公司使用的授权文件对应的帆软版本号为8.0,查看自己使用的版本号是否匹配。
找不到数据连接
访问报表时出现“找不到数据连接XXXX”的错误信息提示。如下图所示
问题原因:(1)报表应用中未配置此名称的数据连接或者配置的数据连接名称有错误。(2)原来访问此报表是正常的但是添加了授权注册文件后出现此问题。
解决方法:
一、检查报表应用中是否配置有此名称的数据连接或者数据连接的名称是否正确;报表应用中的所有的数据连接信息都是保存在WEB-INF/resources目录下datasource.xml配置文件中。
二、查看datasource.xml配置文件中是否有多个数据连接信息,我们购买的帆软的授权文件是单数据源的,配置文件中如果多于1个数据连接加载报表应用时就加载不到数据连接信息;
自定义报表路径,通过配置指定报表的存放目录
帆软报表的默认存放目录为WebReport\WEB-INF\reportlets,使用自定义报表目录,可按照以下步骤操作:
- 报表路径的定义
路径定义在WebReport\WEB-INF\
resources
下
JZReportletConfig.xml
中
其中” D:\opt\reportlets”为报表的自定义存放目录
将开发完的报表放在步骤1中的目录下
报表的访问路径
默认路径下的报表的访问路径为:
http://localhost:8075/WebReport/ReportServer?reportlet=WorkBook.cpt
现在的访问路径应为
http://localhost:8075/WebReport/ReportServer?reportlet=com.fr.JZ&cpt=WorkBook.cpt
LINUX打印、导出后字体乱码或者变形
通过设计制作的cpt报表文件,上传服务器打印或者导出成word、excle、PDF文件,字体会变成乱码、粗体字之类的某有效果、设计器中的字体导出后变成另外一种字体。
产生原因:本地和服务器上的环境不一致或者其他设置问题或者。
解决方法:
首先确定本地和服务器是否存在同样的问题。先确保本地和服务器上使用的帆软jar包一致、再确定本地设计器中是否有此问题。如果jar包一样,本地正常而服务器上存在问题,是因为服务器上缺少使用到的字体包而造成的,可以通过上传字体包或者自己下载一个字体安装包文件到服务器上安装后重启服务器后解决此问题;如果本地和服务器相同,比如导出word后的字体会变成另外一种字体或者导出excle后报表会变形(单元格内容换行),则应该是其他的一些设置原因引起的,比如在设计器中将单元格中的内容设置成了“单行显示”、“以图片方式显示”等
集群环境下访问报表报session time out
在服务器集群部署环境中,点击访问报表偶尔报session time out,或者时访问某应用的报表时会出现此问题,其他报表访问正常。
原因如下:集群的每台服务器间必须创建通信,即session粘滞,双机集群时,用户发出一请求被分配至服务器A,保存了一些信息在session中,该用户再次发送请求被分配到服务器B,要用之前保存的信息,若服务器A和B之间没有session粘滞,那么服务器B就拿不到之前的信息,就返回session time out。一般是集群配置文件配置错误、集群部署的报表应用的主机未开,只开了辅机、未设置报表应用中的DES加密解密key造成的。
解决办法:
一、如果只是某报表访问时有此问题,其他的报表访问都正常时,检查是否配置有DES加密解密key.
二、查看集群的主机是否开启,必须要保证集群主机开启才能正常访问。
三、检查是否设置有报表的集群配置文件或者配置文件是否正确。配置文件在WEB-INF\resource文件下的cluster.xml文件,如没有则新增加(不要用记事本或者写字板等编辑此文件)。
该配置文件不需要对所在服务器做特殊设置,将包含该配置文件的底座重新部署后,重启服务,session超时的问题消失。
注意:我们一般是共享目录方式部署,使用的是帆软的新的集群部署插件;帆软集群新部署插件方法见帆软的帮助文档
http://www.finereporthelp.com/help/15/2/21.html
后台报SQLException,访问报表正常
访问报表正常,但是在后台的WEB容器控制台中有一些警告,显示帆软插入数据的时候会有SQLException异常。
报这个异常的原因是帆软会记录一些报表日志,而目前jar包中往数据库中的插入逻辑与已存在的表结构之类的有冲突或者不匹配造成的,此问题并不影响报表的正常访问。解决方法:删除掉帆软应用下的logdb文件夹后重新启动WEB容器就可以了;另外,如果帆软的报表日志写入功能用不到可以进行关闭,在报表应用的WEB-INF\resources文件夹下config.xml中,如下图:
日志等级可以开到最高servere在后台只显示严重报错,LOGCNG设置为false,关闭日志写入logdb
当前Hsql数据库已被另一线程锁定
在访问报表的时候后台会打印“当前Hsql数据库已被另一线程锁定”的错误信息。
问题原因:为了记录数据决策平台的设置及访问日志等,帆软集成了HSQL服务,它的服务启动模式并非server,所以在使用时会有一些莫名其妙的线程锁死等问题。
解决方法:停掉WEB服务器,将报表应用WEB-INF目录下的finedb和logdb文件夹,及这2个文件夹的备份文件夹统统全部删掉,重启WEB服务器之后就会正常。此问题不能彻底解决掉,只能这样临时解决掉。
帆软日志自动清理的设置
报表的访问日志会随着时间的积累而不停的增加,这些日志信息对我们用处不大,我们除了可以通过手工删除对应的文件夹来手工清理日志信息之外还可以通过设置来完成帆软日志的自动清理。
解决方法:
一、如果是本地帆软设计器,可以在决策系统中设置自动清理及对应的清理周期。如下图所示:
二、如果是服务器上,可以修改相关的配置文件来完成设置。配置文件为报表应用下WEB-INF/resources目录下的config.xml
集群环境中升级帆软报表或者更新底座后主机启动正常辅机启动不正常。
集群环境中升级帆软报表或者更新底座后主机启动正常,辅机未见启动正常的日志,启动到初始化frReport2时,一直在尝试执行某个动作,一段时间后(30分钟左右),辅机有weblogic控制台显示建康:warning,启动|停止server时,部署均无法随server启动|停止;或者辅机启动报错,错误如下:
这样的错误是因为采用重启部署的方式产生的。正确的部署步骤应该是reboot,重启weblogic,建server,建部署,把应用的frReport2删除,部发版的frReport2,再修改配置文件,再重启server。如果因为重启server比较慢,而采用重启部署的方式可能就可能产生上述的问题。
重启部署的方式,帆软的运行态不能释放,重启部署一次就相当于多运行了一个帆软,就会产生错误。如果部署时有这样的错误,需要先把进程kill掉,然后再启动就正常了。