JasperReports is an open source Java reporting tool that can write to a variety of targets, such as: screen, a printer, into PDF, HTML, Microsoft Excel, RTF, ODT, Comma-separated values or XML files.
It can be used in Java-enabled applications, including Java EE or web applications, to generate dynamic content. It reads its instructions from an XML or .jasper file.
JasperReports is part of the Lisog open source stack initiative.
Video JasperReports
Features
JasperReports is an open source reporting library that can be embedded into any Java application. Features include:
- Scriptlets may accompany the report definition, which the report definition can invoke at any point to perform additional processing. The scriptlet is built using Java, and has many hooks that can be invoked before or after stages of the report generation, such as Report, Page, Column or Group.
- Sub-reports
For users with more sophisticated report management requirements, reports designed for JasperReports can be easily imported into the JasperServer - the interactive report server..,.
Maps JasperReports
Jaspersoft
Teodor Danciu began work on JasperReports in June 2001, the sf.net project was registered in September 2001 and JasperReports 0.1.5 was released on November 3, 2001.
JasperReports Version 1.0 was released on July 21, 2005.
The code was originally licensed under a copyleft JasperReports License and later moved to LGPL.
Jaspersoft was originally called Panscopic, and was founded by Al Campa, CEO, and Raj Bhargava, VP of Products in 2001. Panscopic raised $23M from Doll Capital, Discovery Ventures, Morgenthaler Ventures, and Partech. In 2004 Panscopic teamed up with Teodor Danciu, acquired the intellectual property of JasperReports, and changed the name of the company to Jaspersoft. Brian Gentile became CEO in 2007.
Jaspersoft provides commercial software around the JasperReports product, and negotiate contracts with software developers that wish to embed the JasperReports engine into a closed source product.
Jaspersoft's main related product is JasperReports Server, a Java EE web application that provides advanced report server capabilities such as report scheduling and permissions. It is available under an open source license for use in conjunction with open source infrastructure such as MySQL and JBoss, or a commercial license for enterprise deployments involving commercial databases and application servers.
Jaspersoft is a gold partner with MySQL, and JasperReports was included in the PostgreSQL distribution Bizgres version 0.7.
On April 28, 2014, TIBCO announced it had acquired Jaspersoft for approximately $185 million.
JRXML
JasperReports reports are defined in an XML file format, called JRXML, which can be hand-coded, generated, or designed using a tool. The file format is defined by a Document Type Definition (DTD) or XML schema for newer versions, providing limited interoperability. JRXML files have the filename extension .jrxml.
A .jasper file is a compiled version of a .jrxml file. iReport does the compilation on the fly, but the compilation can also get achieved at runtime using the JasperCompileManager class.
IDE integration
Many prominent Java IDEs provide instructions for users wishing to integrate JasperReports into a project.
- NetBeans
- iReport - a visual designer for JasperReports
- Eclipse
- Jaspersoft Studio - a re-write of iReport by the same team who originally developed iReport, backed by Jaspersoft
- JasperWave Report Designer - commercial Eclipse-based visual editor for JasperReports report engine
- IBM Websphere Studio Application Developer
Further reading
- Brian D. Eubanks (November 15, 2005). "Chapter 6. Graphics and Data Visualisation". Wicked Cool Java: code bits, open-source libraries, and project ideas. No Starch Press. pp. 144-146. ISBN 1-59327-061-5.
- Jack M. Germain (2007-07-26). "So You Want to Be a Linux Developer, Part 1". TechNewsWorld. Retrieved 2007-07-30.
Code refactoring
JasperReports has been the focus of several academic papers on code refactoring
- Rajesh Vasa; Jean-Guy Schneider (2003). "Evolution of Cyclomatic Complexity in Object Oriented Software" (PDF). 7th workshop on the quantitative approaches in object-oriented software engineering (QAOOSE'2003).
- Deepak Advani; Youssef Hassoun; Steve Counsell (January 2005). "Heurac: A heuristic-based tool for extracting refactoring data from open-source software versions" (PDF). Retrieved 2007-01-11.
- Emerson Murphy-Hill (2005). "Improving Refactoring with Alternate Program Views" (PDF). Archived from the original (PDF) on 2007-01-14. Retrieved 2007-01-11.
- Vasa, R.; Schneider, J.; Woodward, C.; Cain, A. (17-18 November 2005). "Detecting structural changes in object oriented software systems". Proceedings of the 2005 International Symposium on Empirical Software Engineering (ISESE 2005): 463. doi:10.1109/ISESE.2005.1541855. ISBN 0-7803-9507-7.
- Deepak Advani; Youssef Hassoun; Steve Counsell (2006). "Extracting refactoring trends from open-source software and a possible solution to the 'related refactoring' conundrum". Proceedings of the 2006 ACM symposium on Applied computing: 463. doi:10.1145/1141277.1141685. ISBN 1-59593-108-2. (New York, USA: ACM Press).
- S. Counsell; Y. Hassoun; G. Loizou; R. Najjar (2006). "Common Refactorings, a Dependency Graph and some Code Smells: An Empirical Study of Java OSS". Proceedings of the 2006 ACM/IEEE international symposium on International symposium on empirical software engineering: 463. doi:10.1145/1159733.1159777. ISBN 1-59593-218-6. (New York, USA: ACM Press).
References
External links
- JasperForge.org JasperReports Project Landing Page
- JasperForge.org iReport Project Landing Page
- JasperForge.org (Home Page)
- JasperServer Project Page
- DynamicReports: Open source Java API reporting library based on JasperReports
- DynamicJasper Open Source extension for dynamic columns reports
- JasperReports on Database Journal
- JasperForge.org WebReportBuilder Project Landing Page
- Call Jasper Report / Ireport From Java Application
Source of article : Wikipedia