OSBI.FR - Open Source Business Intelligence

BIRT 2.3.1 dans Pentaho 2.0

La plate-forme Pentaho permet depuis sa création l’exécution et la délivrance de plusieurs types de rapports via son interface web :

  • Pentaho Report (basés sur JFreeReport et JFreeChart)
  • JasperReport
  • Eclipse BIRT

Comme je l’ai déjà souligné dans un article précédent, Eclipse BIRT est un excellent outil de conception de rapports, nettement plus intituitif et ergonomique que Pentaho Report Designer, et moins compliqué que JasperReport (ce dernier s’adresse en effet plus à un véritable public d’informaticiens)

L’utilisation conjointe de PENTAHO et de BIRT permet ainsi la mise en oeuvre d’un serveur web OSBI stable, puissant et convivial.

Malheureusement, lors de chaque nouvelle version de Pentaho, la librairie initiale de BIRT (2.2.1) n’est pas mise à jour… 🙁

Cet article se propose donc de vous indiquer les étapes à effectuer afin de faire un update de la librairie BIRT dans Pentaho 2.0.

Je reprend d’ailleurs ici les préconisations de StrateBI, une société partenaire certifiée de Pentaho en Espagne.

ATTENTION ! Cette procédure ne fonctionne pas pour la toute dernière version de Pentaho (v3.0)

Installation de Pentaho 2.0

La plate-forme Pentaho v2.0 peut-être téléchargée ici:

http://sourceforge.net/project/showfiles.php?group_id=140317&package_id=160028&release_id=648414

Une fois le fichier zip décompressé dans le répertoire {PENTAHO_HOME} (par exemple « C:\Pentaho-2.0 »), on peut lancer le « biserver » en cliquant sur {PENTAHO_HOME}\biserver-ce\start-pentaho.bat. On accède au serveur via l’url http://localhost:8080/pentaho

La nouveauté de Pentaho V2, c’est son passage en web 2.0 grâce à GWT, mais aussi et surtout sa « console d’administration » que l’on peut lancer en cliquant sur {PENTAHO_HOME}\biserver-ce\administration-console\startup.bat.

On accède à celle-ci via l’url http://localhost:8099/ (login: « admin »; mot de passe: « password »)

Récupération des librairies java nécessaires

L’environnement d’exécution de BIRT doit être mis à jour, pour cela il faut télécharger le « BIRT 2.3.1 Runtime » :

http://www.eclipse.org/downloads/download.php?file=/birt/downloads/drops/R-R1-2_3_1-200809221151/birt-runtime-2_3_1.zip

Il faut également récupérer un ensemble de librairies développées par StrateBI, en téléchargeant le fichier zip « Stratebi_Birt_Pentaho.zip » ici Stratebi_Birt_Pentaho.zip

Suppression des librairies java obsolètes

Dans le répertoire {PENTAHO_HOME}\biserver-ce\tomcat\webapps\pentaho\WEB-INF\lib, supprimer uniquement les librairies suivantes :

  • chartengineapi-2.2.1.jar
  • com.ibm.icu-3.6.1-v20070906-birt-custom.jar
  • commons-cli-1.0.jar
  • commons-codec-1.3.jar
  • coreapi-2.2.1.jar
  • dataadapterapi-2.2.1.jar
  • dteapi-2.2.1.jar
  • engineapi-2.2.1.jar
  • flute-1.3.jar
  • js-1.7R1.jar
  • modelapi-2.2.1.jar
  • org.eclipse.emf.common-2.2.1.v200702131851-birt-custom.jar
  • org.eclipse.emf.ecore-2.2.2.v200702131851-birt-custom.jar
  • org.eclipse.emf.ecore.xmi-2.2.2.v200702131851-birt-custom.jar
  • org.w3c.css.sac-1.3.0.v200706111724-birt-custom.jar
  • pentaho-bi-platform-api-2.0.0.stable.jar
  • pentaho-bi-platform-engine-services-2.0.0.stable.jar
  • pentaho-bi-platform-plugin-actions-2.0.0.stable.jar
  • pentaho-bi-platform-plugin-services-2.0.0.stable.jar
  • pentaho-connections-2.0.0.jar
  • scriptapi-2.2.1.jar

Supprimer la totalité du contenu des répertoires suivants :

  • {PENTAHO_HOME}\biserver-ce\pentaho-solutions\system\BIRT\configuration
  • {PENTAHO_HOME}\biserver-ce\pentaho-solutions\system\BIRT\plugins

Mise à jour des librairies java

  • Dézipper « birt-runtime-2_3_1.zip » et recopier l’ensemble des fichiers jar du répertoire \ReportEngine\lib vers {PENTAHO_HOME}\biserver-ce\tomcat\webapps\pentaho\WEB-INF\lib
  • Recopier l’ensemble du contenu de \ReportEngine\configuration vers {PENTAHO_HOME}\biserver-ce\pentaho-solutions\system\BIRT\configuration
  • Recopier l’ensemble du contenu de \ReportEngine\plugins vers {PENTAHO_HOME}\biserver-ce\pentaho-solutions\system\BIRT\plugins
  • Dézipper le fichier « Stratebi_Birt_Pentaho.zip » et recopier l’ensemble des fichiers jar vers  {PENTAHO_HOME}\biserver-ce\tomcat\webapps\pentaho\WEB-INF\lib

Configuration du listener BIRT

Rajouter la ligne ci-dessous dans le fichier :   {PENTAHO_HOME}\biserver-ce\pentaho-solutions\system\systemListeners.xml (juste avant <bean id= »jfreeReportSystemListener » etc……)

<bean id= »birtSystemListener » class= »org.pentaho.platform.plugin.action.eclipsebirt.BirtSystemListener » />

Ajout des drivers JDBC nécessaires

Les différents drivers JDBC aux bases de données requêtées via BIRT doivent être ajoutés dans un répertoire spécifique.

Par exemple, si on désire jouer des rapports depuis une base MySql, on rajoutera le fichier « mysql-connector-java-3.1.14-bin.jar » (ou autre)  dans le répertoire  {PENTAHO_HOME}\biserver-ce\pentaho-solutions\system\BIRT\plugins\org.eclipse.birt.report.data.oda.jdbc_2.3.1.v20080827\drivers

Création d’un rapport de démo avec Eclipse BIRT 2.3.1 (VIDEO)

Création d’une xaction pour lancer le rapport sous Pentaho 2 (VIDEO)

Démonstration de l’utilisation du Pentaho Design Studio pour créer l’xaction qui va permettre de lancer le rapport BIRT sur la plate-forme web Pentaho

4 Comments

  1. Le moteur BIRT 2.3.1 c’est bien celui qui est en natif dans vanilla depuis la version 1.30?

    A propos de BIRT, la version 2.5 est sorti hier je crois, et elle compatible vanilla 1.50.

  2. En effet, la version 2.5 de Birt est tout juste sortie hier !

    La liste des nouvelles fonctionnalités est listée ici, et ma foi elle est plutôt impressionnante :
    http://www.eclipse.org/birt/phoenix/project/notable2.5.php

    Pour ce qui est de la version de BIRT utilisée dans le moteur vanilla en 1.30 en effet c’est bien du BIRT 2.3.1
    Enfin, pour faire un update en BIRT 2.5 sur Pentaho 3, c’est probablement pas très compliqué, il suffira d’effectuer la même procédure indiquée dans mon article avec les librairies 2.5 de BIRT

  3. En gros, on a ici une procédure qui permet de migrer vers un motuer BIRT 2.3, et qui ne fonctionne qu’avec l’ancienne version de Pentaho ?
    Et si on modifie les .jar … c’est évident qu’on aura aucun support de Pentaho … déjà qu’à lire les forums, quand on pose des questions sur des bugs, la réponse sur les versions standards est « prenez un support » … et que même quand on est partenaires Pentaho, comme nous l’avons été, les demandes de corrections de bugs sont balancées sutr des forums de sourceforge, et annulées après 4 semaines … c’est vraiment puant. Le mot « puant » est posé … faut vraiment faire cesser certaines attitudes … on a beau être à l’époque de l’internet et du tout « GoogleAdds » … il y a des limites à respecter, et une vérité à afficher publiquement sur certaines pratiques !

    Donc, là, on se retrouve avec une Pentaho 2 ou une Pentaho 3 avec un moteur BIRT ancien, une 2.2 – qui est le meilleur environnement de reporting Open Source pour des consultants – tout cela parce que Pentao veut pousser Pentaho Reporting. Pentaho Reporting, c’est un bon outil, qui aurait pu entrer en compétition avec BIRT, mais malheureusement, il n’y a aucune compétence sur le marché dessus … et tout le monde sait que le problème de l’Open Source pour contrer Cognos ou BO, ce sont les disponibilités des compétences.

    Comme le souligne Gaël, le projet Vanilla supporte les dernières versions de BIRT … parce qu’on a fait le choix de répondre aux besoins du marché, pas d’essayer d’imposer une vision unique et sectaire. Et je passe sur l’aspect « Métadata » .. au moins, avec BIRT, le Métdata de Vanilla est disponible … je ferai sans doute un post complémentaire sur FreeMétadata+IReport … là, on est une nouvelle fois dans la limite du convenable.

    Pour ceux qui imagine que l’Open Source c’est la collaboration … c’est exact … mais c’est de la colaboration à sens unique … sauf pour l’instant en ce qui concerne les projets « Eclipse », dont BIRT fait partie … donc, oui : BIRT est le projet Open Source UNIQUE à adopter. Pour le reste, c’est à voir au cas par cas … mais le coup de l’update de Pentaho vers BIRT 2.3 – fait par un partenaire – c’est révélateur de l’ambition du projet.

    Patrick

  4. Bonjour Patrick,

    Décidément, je suis de moins en moins d’accord avec ta vision des choses… (en fait plus du tout)

    Encore une fois, tu fais une critique très sévère de Pentaho, en remettant en question leur stratégie et leur modèle marketing, qui pourtant est très claire, notamment la façon dont Pentaho peut s’appuyer sur la communauté, ses partenaires et les intégrateurs (et notamment sur le périmètre d’intervention)
    Cf http://wiki.pentaho.com/display/BEEKEEPER/The+Beekeeper

    Honnêtement, il n’y a absolument rien à reprocher à Pentaho sur ce qu’est l’OPEN SOURCE « Commercial » (car c’est bien de cela dont il s’agit), il me semble que d’autres sociétés du même style ont des approches similaires, qui dans certains cas peuvent être encore plus fermées (cf JasperServer Pro)

    Personnellement, je ne suis pas choqué que Pentaho ne mette pas à jour les librairies de BIRT quand BIRT évolue.
    C’est là que les intégrateurs peuvent intervenir et c’est ce qu’ils font…

    Rappelons qu’un trio est nécessaire pour la bonne propagation d’un soft Open Source sur le Marché:
    1. L’éditeur de la solution
    2. Les intégrateurs de la solution (partenaires ou non)
    3. Les clients
    Un élément manquant, c’est l’assurance que le projet soit non pérenne sur du moyen terme (sans parler des éléments techniques, fonctionnels,… etc de la solution)

    L’important pour le cycle de vie d’un (quelconque) logiciel, c’est la stabilité de celui-ci, Pentaho n’a donc probablement pas identifié la mise à jour des librairies de BIRT dans Pentaho 2&3 comme un impératif majeur, et a préféré se consacrer à des développements liés à la plate-forme elle-même: ça se comprend très bien non ?
    C’est déjà pas mal que Pentaho puisse délivrer des rapports conçus avec BIRT, Jasper et Pentaho Report Designer ?

    Enfin n’oublions pas que tous les solutions actuelles d’OSBI présentent des caractéristiques qui leur sont propres.
    Je persiste et signe: Pentaho reste certainement une des solutions les plus intéressantes, ne serait-ce que parce qu’elle évolue suffisamment rapidement en conservant une très bonne stabilité qui ne pose aucun souci pour une industrialisation du produit, que ce soit en version « Community » ou « Enterprise »

    A bientôt
    Sylvain

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.


*