集成finereport的一点记录

来源:互联网 发布:pca算法 编辑:程序博客网 时间:2024/06/01 10:49
    最近工作需要,使用到了finereport,但是之前只用过jfreechart,项目需要用到finereport,那么也就只能是有了,不过感觉挺好的,至少和jfreechart相比感觉好看多了,而且页面上有了动态效果,纯页面代码,而且基本上只用写sql,所以感觉还是很不错的。简单地弄了个柱状的界面,然后写了个sql,预览了下还真是不错的。但是项目使用总不能坳是装个自带的服务吧。所以想着与struts2集成(项目用的这个),但是也发生了几个错误。首先就是不知道怎么请求,想了下,他肯定不会依赖任何mvc,要不然使用的范围大大地降低了,只能是servlet,所以先看看自带项目的web.xml,果然。加进去以后访问说少包,加上他的fr-server-6.5.jar,然后又说少个类,不过很明显了,有third这样一个关键字,那好,加上fr-third-6.5.jar,然后启动,ok不报错了,访问时说找不到模板,每个目录下都 有那个文件就是找不到,再看自带项目,在WEB-INF/reportlets/下,创建目录,复制文件,不说找不到文件了,而是说找不到数据源了,再看自带项目,有个WEB-INF\resources目录,打开有个datasource.xml文件,查看文件发现,数据库连接信息都在这了,那我直接复制目录吧,加进去访问真出来了。记此笔记,方便下次使用,也方便其他朋友。以下是步骤:

1、cpt文件存放路径为:${projectRoot}/WEB-INF/reportlets/
2、在${projectRoot}/WEB-INF/web.xml中添加:
<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>
3、环境变量中添加:
fr-server-6.5.jar
fr-third-6.5.jar
这两个jar来源于安装后的:C:\FineReport_6.5\WebReport\WEB-INF\lib\下,同时需要javamail,想了想主要是页面中有使用邮件的功能,那么后端肯定也使用了相关功能需要此jar。使用maven添加(当然项目中有的就不用重复了):
  <dependency>
   <groupId>javax.mail</groupId>
   <artifactId>mail</artifactId>
   <version>1.4.7</version>
  </dependency>
4、发生的问题是:找不到数据连接:FRDemo
C:\FineReport_6.5\WebReport\WEB-INF\resources\到${projectRoot}/WEB-INF/
        这样访问就没问题了。

0 0
原创粉丝点击