入门指南
本章节面向那些从未使用过JasperReports的用户,如果你已。经安装或者成功运行JasperReports的demo,请调过本章。
安装JasperReports
JasperReports不是一个独立的应用,它是一个内容渲染库,必须植入到一个客户端或者服务端的Java应用程序。
JasperReports是一个轻量级的库,它能被应用在任何一个支持Java的平台上,作为这样的一个库,JasperReports是与环境完全无关的,它只用来声场报表。
http://sourceforge.net/project/showfiles.php?group_id=36382&package_id=28579
尽管这个jar包含了所有的报表功能,JasperReports第三方的库去支持比如XML解析、日志记载、PDF和XLS文件的生成等
因为JasperReports是一个不能独立运行的库,你不用真的安装它,“安装”JasperReports的意思是你简单的下载他,并将它的jar及所需要的第三方jar包加入到你应用的classpath中。
必要条件
JasperReports专注于报表,它依赖于第三方的库和APL提供必需的功能,如XML解析、数据库连接、PDF和XLS的导出等等。
本节包含了JasperReports所有可能需要的库,根据JasperReports的父应用程序所需要的功能。
使用JasperReports必须要遵循以下两点要求:
绝对的需求,并实际应用了JasperReports的所有模块。
有选择的需求, 仅仅需要一个特殊的功能(如果一个特定的功能并没有被JasperReports的父应用使用,那么它需要的lib在开发中可以不引入)
以下是使用JasperReports的详细说明:
1.java虚拟机(JVM), JRE 1.3 或更高
2.根据使用的报表编译器,以下为报表编辑
*Eclipse JDT Java compiler (www.eclipse.org/jdt/index.php)
* JDK 1.3 or higher
* Jikes (http://jikes.sourceforge.net)
*Groovy (http://groovy.codehaus.org)
* JavaScript (http://www.mozilla.org/rhino)
*BeanShell
(www.beanshell.org)
3.JAXP 1.1 XML 解析接口规范
4.Jakarta Commons Javaflow, sandbox version
5.Jakarta Commons Digester component, version 1.7 or later (解析xml文件,有点像castor)
6.Jakarta Commons BeanUtils component, version 1.4 or later
7.Jakarta Commons Collections component, version 2.1 or later
8.Jakarta Commons Logging component, version 1.0 or later
9.JDBC 2.0 driver
10.iText (Pdf生成库), version 1.01 or later
11.The following APIs for XLS:
Jakarta POI, version 2.0 or later
JExcelApi, version 2.6 or later
12.JFreeChart (free Java chart library), version 1.0.0 or later
X11/HEADLESS JAVA
JarperReport生成报表时依赖于AWT呈现,所以他可能在没有图像支持的UNIX/Linux环境中无法正常运行,应用程序可能会引发错误如“Can’t connect to X11 window server using‘:0.0’.”
为了解决这个问题 JVM1.4以前的版本提供了一个伪X服务器去模拟这个环境,以下是他的一些模拟器:
X Virtual Frame Buffer (Xvfb)
Pure Java AWT (PJA)
Virtual Network Computing (VNC)
在jre1.4 或者更高的版本的首选解决方案为使用一个新的headless AWT toolkit。
这个新的特性允许你使用j2se api 在一个没有GUI环境的服务器端应用。
指定headless环境,需要按照sun的参考实现,运行你的应用程序指定属性:-Djava.awt.headless=true