By Chetan Chadalavada on May 13, 2008
In order to achieve Enterprise Dashboarding in Project WebSynergy, we used Pentaho, MySQL, Glassfish and JFreeCharting
Let's see how we did that.
Pentaho Open BI Suite:
The Pentaho Open BI Suite provides a full spectrum of business intelligence (BI) capabilities including reporting, analysis, dashboards, data mining, data integration, and a BI platform that have made it the world's most popular open source BI suite. For more information, please refer here
Pentaho Dashboards include navigation and viewer components for
reporting and analysis that can be integrated into portals or web pages
includes JSR-168 compatible portlets and example Java Server Pages
(JSPs) that use these components.
Setup a pentaho installation. Check Glassfish-Pentaho installation here. I have installed pentaho on a Glassfish v2 with backend database as MySQL.
1. Creating a Pentaho Solution:
- I have chosen an exisiting solution for a demo. Alternatively, one can create a Pentaho solution using pentaho design studio. This demo uses ServiceAction provided by Pentaho as a webservice to expose a particular xaction in a solution. Now take an existing pentaho dashboard e.g. Revenue Analysis sample. If you want to look at the dashboard functionality, have a look at http://<PentahoHost>:<Port>/pentaho/SWDashboard
2. Drawing Charts:
- To handle charting you can chose many ways. I have chosen JFreeChart for my example. This Pentaho dashboard portlet is an extended version of Sandeep's SDN article.
3. Creating the dashboard:
- For creating JFree Charts the data can be consumed from various sources viz. database result set, xml data. In our case, the data will be supplied by the Pentaho ServiceAction service. Process the SOAP message xml returned after executing the Pentaho xactions and transform it using a custom xsl into the JFreeChart xml data format. The transformed xml will be consumed by JFreeChart api.
- Similarly by using JFreeChart's other apis, we can achieve drill down functionality.
Pentaho charting portlet on Sun's Project WebSynergy:
The new PortalPack NetBeans plugin helps you to develop and deploy portlets on Project WebSynergy in minutes.
Please view this screencast to get a brief preview of the above integration.