MyEclipse Logo

MyEclipse Reports for BIRT Users


Table of Contents

  1. Introduction
  2. MyEclipse Reports - Motivation, Scope and Forces
  3. Project Types
    1. Report Web Project
    2. Report Web Project and WTP-BIRT Web Project Comparison
  4. User Interface Organization
  5. JDBC Driver Datasource Support
  6. Derby Database Server and Sample Reports
  7. BIRT Web Project Porting Guidelines
  8. MyEclipse Reports Installation Guidelines
  9. Feedback

1. Introduction

MyEclipse Reports is an implementation of the Eclipse BIRT framework (BIRT) specialized to the MyEclipse web project conventions and directory layout, development workflow and deployment and testing features. This document describes the key conceptual and physical differences between MyEclipse Reports and BIRT. For a general overview of the report development and deployment features provided by MyEclipse Reports, see the MyEclipse Reports Overview.

1.1 Suggested Audience

This document is intended to provide users, familiar with the BIRT framework and tools, an overview, comparison and contrast between MyEclipse Reports and BIRT. If you do not have any prior BIRT experience, we recommend moving on to the MyEclipse Reports Quickstart guide.

2. MyEclipse Reports - Motivation, Scope and Forces

Industry statistics indicate that a majority of Java developers, when required to develop an application report, resort to expensive manually coded reports rather than employ specialized report development tools. Additionally the majority of reports developed these days have a web accessibility requirement. There are numerous reasons for the lack of use of report development tools but the net result is that there is a need to improve  the report development productivity of Java developers. MyEclipse Reports fills this need by providing a rich feature set to help developers rapidly create, deploy and test custom web application reports. MyEclipse Reports is part of the MyEclipse - Professional Edition product.

MyEclipse Reports is a specialized implementation of BIRT for MyEclipse users. While compatibility with BIRT has been maintained to the maximum degree possible, in order to provide MyEclipse users the most familiar and productive development experience BIRT was customized as follows:

  • All BIRT UI's have been reorganized to provide a cohesive and seamless integration with the MyEclipse UI perspectives, preferences and welcome and help information
  • Report development is limited to MyEclipse web projects, i.e., Report Web Project; BIRT report projects and Eclipse Web Tools Projects are not supported
  • The default Myclipse Report web project folder structure is a simplified and more intuitive version of the standard BIRT web project layout
  • MyEclipse JDBC driver-based datasources replace ODA JDBC driver datasources
  • Replacement of the BIRT dataset query edtior to use the MyEclipse Database Explorer and SQL Editor for browsing and creation of SQL queries
  • MyEclipse validation framework keeps reports and MyEclipse JDBC datasources synchronized
  • MyEclipse Server Sandbox includes a Derby database server and sample schema; replaces the BIRT Derby database and schema
  • Report web project deployment and testing uses the MyEclipse application server connectors for both exploded and packaged application WAR deployment
The key MyEclipse Reports - BIRT differences are discussed in the following sections of this document. Before we begin discussion of the differences between Myclipse Reports and BIRT we would like to share the following installation warning:

Warning!

We strongly recommend that you avoid installing MyEclipse Reports and BIRT into the same MyEclipse environment due to the potential for serious plugin conflict issues that can impede the operation of either product. See Section 9 for further discussion on this topic. TODO


Figure 2-1, MyEclipse Report Design Perspective

3. Project Types

3.1 Report Web Project

Section-2 highlighted the need for web accessible reports. Thus MyEclipse Reports is optimized towards providing a simple, intuitive project type know as the Report Web Project. In its simplest form you can think of this type of project  as a conventional MyEclipse web project extended to include a meta-folder structure for design-time and runtime reports and web resources, datasource connection resources, web report viewing facilities and a deployable report engine.  MyEclipse Reports provides wizards for creating new report web projects and adding report capabilities to existing MyEclipse web projects. 


Figure 3-1, Quick launch report project wizard.

3.1.1 Report Web Project and WTP-BIRT Web Project Comparison

The most noticable difference between the MyEclipse report web project and the WTP-BIRT web project are their respective default project structures and library organization. The following figure illustrates the clean simplicity of the MyEclipse report web project organization when compared with that of the WTP-BIRT web project structure.


Figure 3-2, WTP-BIRT project structure depicted (left) next to MyEclipse Reports project structure (right)

The WTP-BIRT project is an Eclipse Web Tools Platform project enabled with an additional BIRT Reporting runtime facet. For WTP deployment support and team sharing purposes the WTP-BIRT project must contain the BIRT report engine and the BIRT web report viewer component. The combined size of these runtime report components when installed into a standard WTP-BIRT project is approximately 30 MB.

A MyEclipse report web project is MyEclipse web project extended to support the report design-time tools and runtime report engine and report viewers. The roles of the project directories is defined in the web.xml deployment descriptor.  Thus you can restructure the project any way you choose by manually adjusting the report-specific folders and then redefining their WebRoot relative path in the web.xml.  Another key optimization of MyEclipse Reports is the avoidance of repeatedly bulking up every report web project with the 30 MB of report engine Jar libraries common to every WTP-BIRT project. MyEclipse report web projects use an advanced MyEclipse library container named "Report Web Libraries" to minimize the number of report engine resources that must be physically resident in the project at design-time. During a runtime deployment action, the MyEclipse web application deployer dynamicallly merges all of the Jar libraries from the Report Web Libraries container into the deployed version of the project as it is being published to the app-server. This optimization keeps the memory footprint of the report web project small and light-weight.

3.2 Unsupported BIRT Project Types

MyEclipse Reports does not directly support WTP-BIRT web projcets or standalone BIRT report projects. See Section-8 to learn more about porting WTP-BIRT projects to MyEclipse Report Web Projects.

4. User Interface Organization

In order to provide MyEclipse users a seamless, cohesive development experience across all of its feature sets, MyEclipse Reports reorganizes and integrates the key BIRT user interface elements to conform with the MyEclipse UI conventions. Some of the key BIRT UI changes include:

  • BIRT Report Design Perspective replaced by MyEclipse Report Design Perspective
  • BIRT Report Design preferences have been remapped under the MyEclipse preferences node
  • BIRT new projects wizard has been replaced with MyEclipse Report Web Project wizard and the Add Report Capabilitites wizard. These wizards are organized under the MyEclipse wizards category.
  • BIRT help information has been reorganized and updated with MyEclipse Reports specific help information, see the MyEclipse Learning Center/Report Develpment node in the Help system.
 
Figure 4-1, New MyEclipse Report Wizard and MyEclipse Report Design Perspective


Figure 4-2, MyEclipse Reports Help

5. JDBC Driver Datasource Support 

MyEclipse Reports enables the direct use of MyEclipse JDBC drivers as report datasources. The New Datasource wizard available from the Data Explorer view includes the MyEclipse JDBC driver option. During the report web project creation and configuration phase MyEclipse Reports installs a special MyEclipse JDBC ODA driver corresponding to a MyEclipse JDBC datasource. This ODA driver enables the BIRT report engine to recognize the MyEclipse JDBC datasource at runtime.


Figure 5-1, Data Source Wizard depicting MyEclipse JDBC Drivers

5.1 DTP JDBC Connection Profiles Unsupported

MyEclipse Database Explorer has long provided a superset of the Eclipse DTP project features. Therefore MyEclipse does not directly support DTP functionality. Because of this BIRT DTP JDBC datasources is not supported MyEclipse Reports.

6. Derby Database Server and Sample Reports

MyEclipse 6 ships with the integrated MyEclipse Server Sandbox. The server sandbox includes an Integrated Tomcat 6 web server, Derby database server, example schema and preconfigured MyEclipse Derby JDBC driver. To take advantage of the Server Sandbox MyEclipse 6 incorporates a new online resource known as Examples On-Demand. This web site provides a suite of 1-click installable MyEclipse projects that demonstrate the use of popular Java EE and related technologies and frameworks. These example projects are designed to run on the MyEclipse Server Sandbox with zero configuration. The Example On-Demand hosts several example MyEclipse Reports projects that can be installed, deployed and run in 2-clicks.


Figure 6-1, MyEclipse Servers View depicting the Server Sandbox Derby and Tomcat Servers


Figure 6-2, Integrated MyEclipse Examples On-Demand Browser

6.1 BIRT Derby Database and Sample Reports Unsupported

The MyEclipse Server Sandbox and Examples On-Demand are the supported infrastructure and example demonstration mechanisms supported by MyEclipse Reports. Therefore the BIRT embedded Derby server and sample reports are not supported by MyEclipse Reports.

7. WTP-BIRT Web Project Porting Guidelines

Following is an outline of the process for creating a MyEclipse Report Web Project equivalent of a WTP-BIRT web project. Before you begin you should be familiar creating MyEclipse report web projects and setting up MyEclipse JDBC driver-based data sources.

Step-1: Create a MyEclipse Report Web Project

Step-2: Copy the Java src folders and web content resources from the WTP-BIRT project into their respective locations in the MyEclipse project. Do not copy the report engine.

Step-3:  For any report copied into the MyEclipse project for which its dataset uses a DTP JDBC datasource you will need to replace the DTP JDBC data source with a MyEclipse JDBC data source. Thus create a MyEclipse JDBC driver and data source. Then replace the DTP JDBC data source in each data source of the MyEclipse project.

Step-4: Test each report in the Report Designer using the Preview mode to ensure that the data-set is functioning properly. Correct each error as you test the report.

8. MyEclipse Reports Installation Guidelines

While MyEclipse Reports is implemented using the BIRT framework this does not imply that MyEclipse Reports and BIRT can be installed into the same MyEclipse environment. The overlap between the plugins of these two products when installed into the same MyEclipse environment can cause serious plugin conflicts that can impede the operation of both products. Therefore you should only install one of these products per MyEclipse Environment.

If your MyEclipse installation does not include MyEclipse Reports you can install this feature set using one of the following methods based on the method in which you installed MyEclipse:

  • Community Essentials - If you installed MyEclipse using the All-In-One MyEclipse Installer or MyEclipse Plugin Installer then we recommend that you use the integrated MyEclipse Community Essentials Installer. To launch this installer use the menubar action, MyEclipse>Add Features... Once the installer launches and connects to the MyEclipse update site, MyEclipse Reports should appear as one of the installable product options.


    Figure 8-1, MyEclipse Quick Install

  • Pulse - If you installed MyEclipse using Pulse then we recommend you install MyEclipse Reports from the Pulse catalog. The Pulse installer will enable you to install and manage separate MyEclipse Reports and BIRT IDE profiles.

9. Feedback

We would like to hear from you! If you liked this tutorial, has some suggestions or even some corrections for us please let us know. We track all user feedback about our learning material in our Documentation Forum.  Please be sure to let us know which piece of MyEclipse material you are commenting on so we can quickly pinpoint any issues that arise.