JasperReports
Developer(s) | JasperSoft |
---|---|
Stable release | 3.7
/ January 19, 2010 |
Repository | |
Operating system | Cross-platform |
Available in | Multilingual |
Type | Enterprise Reporting |
License | LGPL |
Website | http://www.jasperforge.org/jasperreports |
JasperReports is an open source Java reporting tool that can write to screen, to a printer or into PDF, HTML, Microsoft Excel, RTF, ODT, Comma-separated values and 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.
Features
JasperReports is an open source reporting library that can be embedded into any Java application. Features include:
- PDF, HTML, Microsoft Excel, RTF, ODT, CSV and XML files. The engine allows report definitions to include charts, with the rendering provided by the JFreeChart library which supports many chart layouts, such as Pie, Bar, Stacked Bar, Line, Area, Scatter Plot, Bubble, and Time series.
- Multiple sources can be merged together.[1] The data can be retrieved from defined data sources such as JDBC, CALS Table Models, JavaBeans, EJBQL, XML, Hibernate, and Comma-separated values, and additional data sources can be added to the JasperReports framework by plugging in a custom JRQueryExecuter. An extension is available to use Oracle PL/SQL stored procedures as a data source.[2]
- Scriptlets may accompany the report definition[1], 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[3]
For users with more sophisticated report management requirements, reports designed for JasperReports can be easily imported into the JasperServer - the interactive report server. JasperServer Project Page
JasperSoft
Company type | Software engineering |
---|---|
Industry | business intelligence |
Founded | 2001 |
Key people | Teodor Danciu, JasperReports; Al Campa, Founder; Brian Gentile, CEO |
Products | JasperSoft BI[4] |
Website | jaspersoft.com |
Teodor Danciu began work on JasperReports in June 2001, the sf.net project was registered in September 2001[5] and JasperReports 0.1.5 was released on November 3rd 2001.[6]
JasperReports Version 1.0 was released on July 21, 2005.[7]
The code was originally licenced under a copyleft JasperReports License[5] 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.[8] In 2004 Panscopic teamed up with Teodor Danciu,[9] 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 JasperServer, 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,[10] and JasperReports was included in the PostgreSQL distribution Bizgres version 0.7.[11][12][13]
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), providing limited interoperability.[14]
The main difference between using XML and a .jasper file is that the XML file should be compiled at runtime using the JasperCompileManager class.
Third party tools
There are many tools providing JasperReport capabilities:
- iReport, an open source standalone graphical program that provides report designer capabilities, and is able to run reports using all data source supported by the JasperReports engine.[3] iReport is actively maintained by JasperSoft.[15]
- DynamicReports, an open source Java API reporting library based on JasperReports which lets you create sophisticated reports at the lowest way without need to use visual designer, main benefit of this library is dynamic report design.
- SWTJasperViewer, an open source reusable component that can be embedded in any SWT/JFace application such as Eclipse.[16]
- five Eclipse plug-ins that provide report designing and debugging capabilities, including:
- WebReportBuilder, an open source Java EE web application that allows web based developers and non developers to create basic and advanced Reports based on JasperReports to be used as a Web Report Server.
- OpenReports, a Java EE web application that provides advanced report server capabilities with support for four open source reporting engines: JasperReports, JFreeReport, JXLS, and Eclipse BIRT.[19]
- JasperTags, a JSP tag library for easy inclusion of reports in web applications.[20]
- Plazma Report Designer, an open source JasperReports designer plugin for Eclipse.[21]
- Aspose.Words for JasperReports, for converting reports from JasperReports and JasperServer to Word formats.[22]
- Aspose.Slides for JasperReports, for converting to PowerPoint PPT and PPS formats.[23]
IDE Integration
Many prominent Java IDEs provide instructions for users wishing to integrate JasperReports into a project. [24]
- IBM Websphere Studio Application Developer [25]
- NetBeans [26]
- JasperReports Visual Designer for NetBeans - [1]
- Eclipse
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. pp144–146. ISBN 1593270615.
{{cite book}}
:|pages=
has extra text (help) - 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 (2003). "Evolution of Cyclomatic Complexity in Object Oriented Software" (PDF). 7th workshop on the quantitative approaches in object-oriented software engineering (QAOOSE'2003).
{{cite journal}}
: Unknown parameter|coauthors=
ignored (|author=
suggested) (help) - 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.
{{cite web}}
: CS1 maint: multiple names: authors list (link) - Emerson Murphy-Hill (2005). "Improving Refactoring with Alternate Program Views" (PDF). 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.
{{cite journal}}
: CS1 maint: date format (link) - 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).
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - S. Counsell, Y. Hassoun, G. Loizou and 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).
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - Simon Steinmetz, Loïc Dassonville and David Brassely (2010). "Common Refactorings Vol. 2, Write Good Code: Frameworks for real developer": 374. doi:10.1145/1159733.1159888. ISBN 1-6789-248-6 (New York, USA: ACM Press).
{{cite journal}}
: Cite journal requires|journal=
(help)
References
- ^ a b Erik Swenson (2002-09-20). "Reports made easy with JasperReports". JavaWorld.com. Retrieved 2007-01-11.
- ^ OracleStoredProcedures sub-project
- ^ a b Christian Brell, Tobias Kieninger (January 2007). "Freie Reporting-Tools im Vergleich" (PDF). JavaSpektrum. Retrieved 2007-07-14.
{{cite journal}}
: More than one of|work=
and|journal=
specified (help) - ^ Zack Urlocker (July 23, 2007). "JasperSoft BI Suite 2.0". InfoWorld weblog. Retrieved 2007-07-30.
- ^ a b "An Interview with Teodor Danciu of JasperReports". RootPrompt. February 16, 2005. Retrieved 2007-01-11.
- ^ freshmeat.net: Project details for JasperReports:Comment
- ^ "JasperReports 1.0 released". theserverside. Retrieved 2007-01-11.
- ^ "Open source BI grabs more VC attention". Computer Business Review. 21 July 2005. Retrieved 2007-01-11. [dead link]
- ^ "Can an open source project get acquired? One just did". zdnet blogs. April 25, 2005. Retrieved 2006-12-28.
- ^ "MySQL AB :: Jaspersoft". 2006-06-27. Retrieved 2007-01-11.
- ^ "Bizgres 0.7 Released". bizgres.org. August 3, 2005. Retrieved 2007-01-11.
- ^ Gavin Clarke (3 August 2005). "Bizgres gets down to business with open source BI stack". RegDeveloper. Retrieved 2007-01-11.
- ^ Jutta Horstmann (November 10, 2005). "Migrating to Open Source Databases: The Data Warehouse Case Study" (PDF). Retrieved 2007-01-11. [dead link]
- ^ David R. Heffelfinger. "JasperReports Tutorial/Getting Started Guide". Retrieved 2007-01-11.
- ^ David R. Heffelfinger. "Review: iReport Designer for JasperReports". Retrieved 2007-01-11.
- ^ "SWTJasperViewer: plugin details". Eclipse-Plugins.info. 25 November 2004. Retrieved 2007-01-11.
- ^ Anadi Misra (May 31, 2006). "Generating reports with Jasper Reports". Retrieved 2007-01-11. [dead link]
- ^ "JasperAssistant: Plugin details". Eclipse-Plugins.info. 12 December 2006. Retrieved 2007-01-11.
- ^ Brian Burridge (April 8, 2005). "JasperReports and OpenReports". Retrieved 2007-01-11.
- ^ JasperTags
- ^ Plazma Report Designer
- ^ Aspose.Words for JasperReports
- ^ Aspose.Slides for JasperReports
- ^ JasperReports Project Page
- ^ Ricardo Olivieri (17 November 2004). "Generating online reports using JasperReports and WebSphere Studio". IBM developerWorks. Retrieved 2007-01-11.
- ^ Craig Conover and Marina Sum (September 1, 2006). "Integrating and Using JasperReports in NetBeans". Sun Developer Network. Retrieved 2007-01-11.
External links
- JasperForge.org JasperReports Project Landing Page
- JasperForge.org iReport Project Landing Page
- JasperForge.org (Home 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