How to build a dashboard using Pentaho BI?

This is a Type-1 Dashboard tutorial

Let us analyze the options of building a dashboard using Pentaho,one of the popular and open source BI system.

Dashboards are a very important presentation of data. Business users like dashboards since they give them various information objects on one page, mixing diagrams, tables and maybe even textual information. Although the true value of a dashboards is mainly defined by its content and design, the technology plays a role, too. Technology defines the options that a designer have in terms of the representation of data and the navigation between information objects.


Following is an acknowledgement from the Pentaho wiki

“When we first investigated on how to build dashboards with Pentaho, we used the PCI’s (Pentaho Preconfigured Install) sample dashboard implementation and the accompanying Dashboard Building guide. Then Pentaho introduced the Google Map integration and the AJAX API. We found that Pentaho had provided an alternative way to build dashboards. Unfortunately both approaches don’t cater for an easy addition of new dashboards to a solution since they both require new JSP pages to be added to the web application.”

Pentaho does not have any special Dashboard Tool. They just provide you with the nuts,bolts, a framework and a loose tutorial with example here and there.

Here is the Pentaho Dashboard Framework Concept

This framework provides a standardized way to implement and publish dashboards to the Pentaho BI Platform. The Pentaho AJAX API is used to retrieve the BI content and the Pentaho Solution Repository stores the content definitions. Therefore all dashboard information objects, such as charts and reports, need to be defined in Pentaho Action Sequences. That is one difference to the standard sample dashboard which uses chart widgets and ChartHelper components instead of action sequences.
Three files are at the heart of this dashboard framework.

* Dashboards.jsp – JSP file that provides the access point to the
* template-dashboard.html – A template organizing the navigation and content area
* dashboard-list.xsl – Style sheet to display the dashboard navigation bar


The Dashboards.jsp page is called by the user and provides the access to all Dashboards. The main layout of the page is defined in the template-dashboard.html template page and consists of four parts: Header, Dashboard Navigation Bar, Dashboard Content and Footer. Header and Footer are defined in the template file while the style of the Dashboard Navigation Bar is defined in the dashboard-list.xsl. The Dashboard Content area is the place where the actual dashboards are displayed.

In short building a dashboard with Pentaho is a complex process and the developer needs the following skillset

  • Javascript
  • AJAX techniques
  • HTML
  • CSS
  • XML

If you notice, the above skillset matches to the skillset a website developer has or requires.

So is being a Pentaho dashboard developer equivalent to being a website developer?

We hope the Pentaho concentrates on providing a better dashboarding option rather than a lame tutorila on how to build a JSP page or a website.

Here is the Pentaho dashboard reference material

If you come across a better tutorial or a working dashboard method using Pentaho please forward us the details and we will happily update this tutorial.