JasperReports
Encyclopedia
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 licenced 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 JasperServer, a Java EE web application
Web application
A web application is an application that is accessed over a network such as the Internet or an intranet. The term may also mean a computer software application that is coded in a browser-supported language and reliant on a common web browser to render the application executable.Web applications are...

 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
MySQL
MySQL officially, but also commonly "My Sequel") is a relational database management system that runs as a server providing multi-user access to a number of databases. It is named after developer Michael Widenius' daughter, My...

 and JBoss
JBoss
JBoss Application Server is an open-source Java EE-based application server. An important distinction for this class of software is that it not only implements a server that runs on Java, but it actually implements the Java EE part of Java...

, 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
PostgreSQL
PostgreSQL, often simply Postgres, is an object-relational database management system available for many platforms including Linux, FreeBSD, Solaris, MS Windows and Mac OS X. It is released under the PostgreSQL License, which is an MIT-style license, and is thus free and open source software...

 distribution Bizgres version 0.7.

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
Document Type Definition
Document Type Definition is a set of markup declarations that define a document type for SGML-family markup languages...

 (DTD), providing limited interoperability.

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. iReport is actively maintained by JasperSoft.
  • DynamicReports, an open source Java reporting library based on JasperReports. It allows to create dynamic report designs and it doesn't need a visual report designer.
  • SWTJasperViewer, an open source reusable component that can be embedded in any SWT
    Standard Widget Toolkit
    The Standard Widget Toolkit is a graphical widget toolkit for use with the Java platform. It was originally developed by IBM and is now maintained by the Eclipse Foundation in tandem with the Eclipse IDE...

    /JFace
    JFace
    JFace is defined by the Eclipse project as "a UI toolkit that provides helper classes for developing UI features that can be tedious to implement." It is a layer that sits on top of the raw widget system, and provides classes for handling common UI programming tasks...

     application such as Eclipse
    Eclipse (software)
    Eclipse is a multi-language software development environment comprising an integrated development environment and an extensible plug-in system...

    .
  • Report Integration Framework, an open source report abstraction layer.
  • five Eclipse plug-ins that provide report designing and debugging capabilities, including:
    • JasperSoft Studio is a rewrite of iReports in Eclipse
    • a commercial Eclipse plug-in called JasperAssistant. The JasperAssistant plug-in is built using SWTJasperViewer.
    • JasperWave Report Designer - free Eclipse-based report designer for JasperReports report engine
    • Plazma Report Designer, an open source JasperReports designer plugin for Eclipse.
  • 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.
  • JasperTags, a JSP tag library for easy inclusion of reports in web applications.
  • Aspose.Words for JasperReports, for converting reports from JasperReports and JasperServer to Word formats.
  • Aspose.Slides for JasperReports, for converting to PowerPoint PPT and PPS formats.
  • The Information Management System for Mine Action (IMSMA) uses JasperReports for its reporting capability. It is the most commonly used planning software for humanitarian demining.

IDE Integration

Many prominent Java IDE
Integrated development environment
An integrated development environment is a software application that provides comprehensive facilities to computer programmers for software development...

s provide instructions for users wishing to integrate JasperReports into a project.
  • IBM Websphere Studio Application Developer
  • NetBeans
    NetBeans
    NetBeans refers to both a platform framework for Java desktop applications, and an integrated development environment for developing with Java, JavaScript, PHP, Python, Groovy, C, C++, Scala, Clojure, and others...

  • Eclipse
    Eclipse (software)
    Eclipse is a multi-language software development environment comprising an integrated development environment and an extensible plug-in system...


Code refactoring

JasperReports has been the focus of several academic papers on code refactoring

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK