About the development environment
The development environment for a reporting application must provide access to all the required API libraries. For OSGi, which includes plug-ins in addition to library jars, the key requirement for the application is the path to the BIRT home directory.
About plug-ins in BIRT home (OSGi only)
The plugins subdirectory of the BIRT home directory contains the org.eclipse.birt and other plug-ins that provide the functionality of a reporting application. Depending on the requirements of your reporting application and the items in your report designs, you can omit plug-ins that provide functionality that the application and designs do not use.
About the BIRT libraries
The lib subdirectory contains JAR files providing BIRT API classes and classes that support the APIs. For POJO run time, applicable JARs from your lib subdirectory need to be in your application’s build path or, in the case of a web application, in the WEB-INF/lib directory. For OSGi, the BIRT home directory ensures that the class loader of the application server or JVM in which you deploy the report engine can locate the libraries. Depending on the requirements of your reporting application and the items in your report designs, you can omit libraries that provide functionality that the application and designs do not use.
Table 5-1 lists and describes all the JAR files in the POJO lib directory. Table 5-2 lists and describes all the JAR files in the OSGi lib directory.
Table 5-1 Libraries in the BIRT POJO run‑time lib directory
Library
Description
com.ibm.icu_<version>.jar
Provides International Components for Unicode to support text in multiple locales.
commons-cli-<version>.jar
Provides command-line parsing. Used by the report.engine.ReportRunner class.
derby.jar
Used for access to Derby databases.
flute.jar
Used by the report.model plug-in. Provides access to CSS functionality.
javax.*_<version>.jar
Provides web services descriptor language and xml stream parsing functionality.
js.jar
Provides scripting functionality.
org.apache.*-<version>.jar
Used for encoding, decoding, logging, and presentation related to web functions.
org.eclipse
.birt.runtime_<version>.jar
Contains the BIRT framework and API classes.
org.eclipse
.core.*_<version>.jar
Required for access to system resources like the file system.
org.eclipse
.datatools.*_<version>.jar
Provides connectivity and language support for various databases.
org.eclipse.emf.*_<version>.jar
Required for model framework support.
org.eclipse
.equinox.*_<version>.jar
Contains an implementation of the OSGi framework, including optional services.
org.eclipse
.orbit.mongodb_<version>.jar
Used for access to MongoDB databases.
org.eclipse.osgi*_<version>.jar
Provides and implementation and services of the OSGi framework.
org.eclipse.update
.configurator_<version>.jar
Provides Eclipse update functionality, including plug-in and feature management.
org.w3c.*_<version>.jar
Used for language parsing of CSS, SMIL, and SVG.
Tidy.jar
Used for editor parsing and readable presentation of programming languages.
Table 5-2 Libraries in the BIRT OSGi home lib directory
Library
Description
chartengineapi.jar
Contains chart model and factory API classes. Supports generation of charts in a report.
chartexamplescoreapi.jar
Contains classes providing an example of a charting extension.
chartitemapi.jar
Contains the classes for the chart report item.
com.ibm.icu_<version>.jar
Provides International Components for Unicode to support text in multiple locales.
commons-cli-<version>.jar
Provides command-line parsing. Used by the report.engine.ReportRunner class.
coreapi.jar
Contains framework and utility API classes.
crosstabcoreapi.jar
Contains cross tab API classes.
dataadapterapi.jar
Contains data adapter classes.
dataaggregationapi.jar
Contains the data aggregation API class.
dataextraction.jar
Contains classes for extracting report contents to comma‑separated values (CSV) format.
dteapi.jar
Provides API access to data sources. Transforms data that the data set provides.
emitterconfig.jar
Contains classes to support custom emitters.
engineapi.jar
Contains API classes for generating a report from a design.
flute.jar
Used by the report.model plug-in. Provides access to CSS functionality.
js.jar
Provides scripting functionality.
modelapi.jar
Contains report design element API classes.
modelodaapi.jar
Used for conversions between ROM elements and required Eclipse Data Tools Platform (DTP) Open Data Access (ODA) elements.
odadesignapi.jar
Used when retrieving data.
org.apache.commons
.codec-<version>.jar
Used by the report.engine plug-in. Provides encoding and decoding functionality.
org.eclipse.birt.axis
.overlay_<version>.jar
Required for charts.
org.eclipse.emf
.common_<version>.jar
Required for charts.
org.eclipse.emf.ecore
.xmi_<version>.jar
Required for charts.
org.eclipse.emf
.ecore_<version>.jar
Required for charts.
org.w3c.css.sac_<version>.jar
Used by the report.model plug-in. Required for CSS functionality.
scriptapi.jar
Contains API classes for scripting.
About required JDBC drivers
BIRT applications load JDBC drivers from the directory
plugins/org.eclipse.birt.report.data.oda.jdbc_<version>/drivers. Place the driver classes or Java archive (.jar) files that you require to access JDBC data sources in this location.
Setting up the build path and accessing Javadoc
To access the BIRT APIs during application development using the Java perspective in the Eclipse Workbench, add API JAR files to the build path.
To view the Javadoc, open the online help and navigate to BIRT Programmer ReferenceReferenceAPI Reference. Choose Report Engine API Reference for the Report Engine API and Report Object Model API Reference for the Design Engine API.
How to add BIRT libraries and API Javadoc to a Java application’s build path
Use the Java perspective in the Eclipse Workbench to perform these steps on an existing Java project.
1 If you did not start with the BIRT All-in-One download, unzip the BIRT run time to a directory. For OSGi, this directory is the BIRT home directory.
2 In Package Explorer, right-click the Java project. Choose Build Path
Configure Build Path.
3 In Properties for <project name>—Java Build Path, select Libraries. To add a JAR file to the build path, choose Add External JARs.
4 In JAR Selection, you have two options:
*For BIRT All-in-One, navigate to the eclipse\plugins directory where all the BIRT JARs are located.
*Navigate to the directory into which you unzipped the BIRT run time in step 1.
5 Select a required JAR file. Choose Open. The JAR file appears in JARs and class folders on the build path.
6 To associate the Javadoc with the class files in a BIRT API library, perform the following steps:
1 Expand the API JAR file in JARs and class folders on the build path. Select Javadoc location: (None). Choose Edit.
2 In Javadoc for <JAR file name>, select Javadoc URL. In Javadoc location path, type or browse to the directory that contains the Javadoc.
3 Choose Validate. Validating Javadoc Location displays a message about whether the specified directory contains Javadoc. Choose OK.
4 If necessary, correct the path to the Javadoc. In Javadoc for <JAR file name>, choose OK.
7 Repeat steps 3 through 6 for each required BIRT JAR file.