| By Jason Weathersby, Iana Chatalbasheva, Tom Bondur | Article Rating: |
|
| March 7, 2007 11:15 AM EST | Reads: |
59,689 |
The Eclipse platform is an Open Source, integrated system of application development tools that you implement and extend using a plug-in interface. Eclipse provides a set of core plug-ins that configures the basic services for the platform's framework. A platform developer can build and integrate new tools in this application development system.
Business Intelligence Reporting Tool (BIRT) is a set of plug-in extensions that lets a developer add reporting functionality to an application. The APIs in BIRT define extension points that let the developer add custom functionality to the BIRT framework.
This article describes how to create a BIRT extension using the Eclipse Plug-in Development Environment (PDE). The example adds a custom report item, RotatedLabel, to the BIRT Report Designer Palette that a report developer can drag-and-drop into a report design, as shown in Figure 1.
The sample code for the plug-in creates a label in the runtime report that renders text at a specified angle. Figure 2 shows the display text rotated at an angle of 45 degrees.
A developer uses the Eclipse PDE to create, develop, test, debug, and deploy a plug-in. The Eclipse PDE supports host and runtime instances of the workbench project. The host instance provides the development environment. The runtime instance lets you launch a plug-in to test it.
To implement the report item extension, the plug-in developer does the following tasks:
- Configures the plug-in project in the Eclipse PDE
- Adds the report item to the Report Designer Palette using the report item UI extension point.
- Adds the report item definition to the Report Object Model (ROM) using the report item model extension point.
- Adds rendering behavior to the report item using the report item presentation extension point.
- Deploys the report item extension to the Eclipse plug-in environment
- Plug-in manifest - An XML document that describes the plug-in's activation framework to the Eclipse runtime environment
- Plug-in runtime class - A Java class that defines the methods for starting, managing, and stopping a plug-in instance
- Extension-point schema definition - An XML document that specifies a grammar that you must follow when defining the elements of a plug-in extension in the Eclipse PDE
In the Eclipse PDE, create a new project for the rotated label report item extension by choosing File->New->Project and selecting the Plug-in Project wizard. In Plug-in Project, modify the settings, as shown in Table 1.
In Plug-in Content, modify the settings, as shown in Table 2.
Figure 3 shows the host instance of the Eclipse PDE with the rotated label report item extension project open in the Manifest Editor.
After defining the plug-in project, specify the list of plug-ins that must be available on the classpath of the rotated label report item extension to compile and run. On PDE Manifest Editor, choose Dependencies. In Required Plug-ins, remove the following plug-ins:
- org.eclipse.ui
- org.eclipse.core.runtime
Choose Add. Plug-in Selection appears. In Plug-in Selection, select the following plug-ins:
- org.eclipse.emf.ecore
- org.eclipse.birt.report.designer.ui
- org.eclipse.birt.report.model
- org.eclipse.draw2d
- org.eclipse.birt.report.engine
- org.eclipse.jface.text
- org.eclipse.core.runtime
- org.eclipse.birt.core
- org.eclipse.ui
- org.eclipse.birt.core.ui
On PDE Manifest Editor, choose Extensions. On Extensions, declare the extension points required to implement the rotated label report item plug-in and add the extension element details. The Eclipse PDE uses the XML schema defined for each extension point to provide the list of valid attributes and values specified for the extension elements.
To add an extension point, choose Add. New Extension appears. In Available extension points, select the plug-in that contains the extension point.
Published March 7, 2007 Reads 59,689
Copyright © 2007 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Jason Weathersby
Jason Weathersby is a member of the extended BIRT development team at Actuate Corporation and has backgrounds in both computer science and technical writing. He has many years experience in technical consulting, training, writing, and publishing about reporting, business intelligence tools, and database technologies.
More Stories By Iana Chatalbasheva
Iana Chatalbasheva is a member of the extended BIRT development team at Actuate Corporation and has backgrounds in both computer science and technical writing. She has many years experience in technical consulting, training, writing, and publishing about reporting, business intelligence tools, and database technologies.
More Stories By Tom Bondur
Tom Bondur is a member of the extended BIRT development team at Actuate Corporation and has backgrounds in both computer science and technical writing. He has many years experience in technical consulting, training, writing, and publishing about reporting, business intelligence tools, and database technologies.
- Cloud People: A Who's Who of Cloud Computing
- Basho Announces Open Source Riak CS and General Availability of Riak CS Enterprise v1.3
- Session Topics: 12th Cloud Expo / Cloud Expo New York
- MicroStrategy Announces General Availability of MicroStrategy 9.3.1
- CollabNet And UC4 Announce General Availability Of Joint Enterprise DevOps Platform
- MicroStrategy Announces General Availability of MicroStrategy 9.3.1
- Project Floodlight Grows to the World’s Largest SDN Ecosystem; Global Users, Contributors and Partners Innovating Using Open Source SDN
- The Software Freedom Conservancy – Fundraising Campaign: Non-Profit Accounting Software
- Mobility News Weekly – Week of March 17, 2013
- Midokura Announces General Availability of Disruptive Network Virtualization Technology
- Remote Controlling a Car over the Web. Ingredients: Smartphone, WebSocket, and Raspberry Pi.
- Social Business Intelligence Book Industry’s First Executive SBI Guide
- Cloud People: A Who's Who of Cloud Computing
- SUSE Receives Common Criteria Security Certifications
- Basho Announces Open Source Riak CS and General Availability of Riak CS Enterprise v1.3
- Session Topics: 12th Cloud Expo / Cloud Expo New York
- MicroStrategy Announces General Availability of MicroStrategy 9.3.1
- CollabNet And UC4 Announce General Availability Of Joint Enterprise DevOps Platform
- MicroStrategy Announces General Availability of MicroStrategy 9.3.1
- Project Floodlight Grows to the World’s Largest SDN Ecosystem; Global Users, Contributors and Partners Innovating Using Open Source SDN
- The Software Freedom Conservancy – Fundraising Campaign: Non-Profit Accounting Software
- Antenna to "Myth-Bust" Common Mobile App Development Misconceptions in Upcoming Webinar
- Mobility News Weekly – Week of March 17, 2013
- Global Information Security Products And Services Industry
- Java Developer's Journal Exclusive: 2006 "JDJ Editors' Choice" Awards
- The i-Technology Right Stuff
- Creating Web Applications with the Eclipse Web Tools Project
- Eclipse Special: Remote Debugging Tomcat & JBoss Apps with Eclipse
- Where Are RIA Technologies Headed in 2008?
- The Next Programming Models, RIAs and Composite Applications
- SYS-CON Webcast: Eclipse IDE for Students, Useful Eclipse Tips & Tricks
- How to Bring Eclipse 3.1, J2SE 5.0, and Tomcat 5.0 Together
- Eclipse: The Story of Web Tools Platform 0.7
- The Top 250 Players in the Cloud Computing Ecosystem
- "Eclipse 3.0 is a Great Leap Forward," Says JDJ's Dudney
- Developing an Eclipse BIRT Report Item Extension

























