OSBI.FR - Open Source Business Intelligence

Birt 2.5 (ou 2.3) dans Pentaho 3.0 (maj de l’article du 7 sept)

Après les explications dans un précédent article pour l’intégration de Birt 2.3.1 dans Pentaho 2.0, et comme les projets BIRT et Pentaho évoluent vite, voici une nouvelle procédure fournie par Pentaho pour mettre à jour la dernière version de BIRT dans la plate-forme Pentaho 3.0

J’ai essayé, cela fonctionne très bien !

http://wiki.pentaho.com/display/ServerDoc1x/Upgrading+the+BIRT+Report+Engine+in+Pentaho+3.0

Et pour ceux qui veulent la procédure en français, alors c’est ici:

1. Inscrire le listener de BIRT

Depuis Pentaho V3, le plugin BIRT n’est plus démarré automatiquement par le serveur Pentaho.

Pour activer ce plugin, il faut ajouter la ligne suivante dans le fichier ${pentaho_home}\biserver-ce\pentaho-solutions\system\systemListeners.xml :

(${pentaho_home) représente le répertoire d’installation de Pentaho (par exemple C:\Pentaho-3.0)

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

3. Mise à jour des librairies de BIRT

  • Télécharger le Runtime de BIRT 2.3 ou 2.5 selon la version de Birt utilisée
  • Effacer tous les fichiers de ${pentaho_home}\pentaho-solution\system\BIRT\configuration
  • Effacer tous les fichiers de ${pentaho_home}\pentaho-solution\system\BIRT\plugins
  • Depuis le répertoire extrait de Birt Runtime, copier le fichier birt-runtime\ReportEngine\configuration\config.ini vers ${pentaho_home}\biserver-ce\pentaho-solution\system\BIRT\configuration
  • Copier les fichiers contenus dans birt-runtime\ReportEngine\plugins vers ${pentaho_home}\biserver-ce\pentaho-solution\system\BIRT\plugins
  • Copier le(s) driver(s) JDBC des bases de données auxquelles accèdent vos rapports BIRT dans le dossier ${pentaho_home}\biserver-ce\pentaho-solution\system\BIRT\plugins\org.eclipse.birt.report.data.oda.jdbc_2.5.0.v20090605\drivers. (les numéros de version varient selon la version de BIRT utilisée).  Pour lancer des rapports BIRT directement sur la base SampleData intégrée à Pentaho, il suffit de copier le driver hypersonic depuis  ${pentaho_home}\biserver-ce\tomcat\common\lib\hsqldb-1.8.0.jar
  • Copier l’ensemble des fichiers depuis birt-runtime\ReportEngine\lib vers ${pentaho_home}\biserver-ce\tomcat\webapps\pentaho\WEB-INF\lib (écraser le fichier commons-cli-1.0.jar)
  • Supprimer tous les anciens fichiers jars devenus obsolètes (par exemple remplacer chartengineapi-2.2.1.jar par chartengineapi).  Ci-dessous le code pour effacer l’ensemble des fichiers
  • del chartengineapi-2.2.1.jar
    del com.ibm.icu-3.6.1-v20070906-birt-custom.jar
    del coreapi-2.2.1.jar
    del dataadapterapi-2.2.1.jar
    del dteapi-2.2.1.jar
    del engineapi-2.2.1.jar
    del flute-1.3.jar
    del js-1.7R1.jar
    del modelapi-2.2.1.jar
    del org.eclipse.emf.common-2.2.1.v200702131851-birt-custom.jar
    del org.eclipse.emf.ecore-2.2.2.v200702131851-birt-custom.jar
    del org.eclipse.emf.ecore.xmi-2.2.2.v200702131851-birt-custom.jar
    del org.w3c.css.sac-1.3.0.v200706111724-birt-custom.jar
    del scriptapi-2.2.1.jar

4. Modifier le n° de version de BIRT dans le rapport (au cas où…)

Il est possible que BIRT génère des erreurs à cause du numéro de version écrit par BIRT via BIRT designer. Dans ce cas, il suffit de décrémenter le numéro de version dans le fichier rptdesign

Ainsi comme « version 3.2.20 » désigne une version 2.5 de BIRT 2.5 et « version 3.2.15 » une version 2.2.1,
Il suffit par exemple de changer la ligne suivante dans l’en-tête du rapport pour « tromper » le serveur Pentaho v3

<report xmlns="http://www.eclipse.org/birt/2005/design"version="3.2.20" id="1">
par
<report xmlns="http://www.eclipse.org/birt/2005/design"version="3.2.15" id="1">

10 Comments

  1. Bonjour,
    j’ai un problème avec l’envoi par mail de mes rapports BIRT via Pentaho. Pourtant mes rapports s’exécutent bien dans la plateforme. Mais quand j’envoie par mail, rien! Et dans les logs j’ai ça :

    org.eclipse.birt.report.engine.api.impl.RunAndRenderTask doRun
    SEVERE: An error happened while running the report. Cause:
    java.lang.IllegalStateException: zip file closed

    quelqu’un a le même problème? une idée?

  2. Bonjour Siroy,

    Je viens de faire un test d’envoi de rapport BIRT via mail depuis une Pentaho 3.0, ne j’ai aucun pb
    Je te conseille de t’inspirer de l’xaction suivante qui fonctionne avec un rapport conçu avec « Pentaho Report Designer » et de le remplacer par un BIRT report :

    biserver-ce\pentaho-solutions\steel-wheels\reports\invent_subscribe.xaction

    Good luck !

    Sylvain

  3. @s.decloix – Merci de votre réponse
    J’ai essayé en repartant de invent_subscribe.xaction et en l’adaptant petit à petit et désormais cela fonctionne!
    Néanmoins je n’ai pas compris ce qui gênait dans mon premier Xaction. Ils sont désormais très similaire et pourtant un seul fonctionne.

    Merci encore

  4. En fait il faudrait comparer le code XML des 2 xactions pour voir les différences à l’aide d’un comparateur de fichiers (winmerge ou autre)

    En passant par l’interface de Pentaho Design Studio, il faut faire attention quand on supprime un ou un composant dans les => dans ce cas le code XML de l’xaction n’est pas remis à jour et cela provoque des erreurs !

    En ce moment moi j’ai un souci aussi avec BIRT sous Pentaho: impossible de passer un paramètre multivalué !
    J’ai ouvert un thread sur le forum de pentaho, si jamais tu as une idée je suis bien évidemment preneur 😉

    voici le lien:
    http://forums.pentaho.org/showthread.php?t=72307

    Sylvain

  5. Bonjour Sylvain,

    depuis mon dernier message, je continue d’utiliser BIRT avec Pentaho (version 3.0) avec succès. Toutefois je souhaiterais désormais utiliser Pentaho 3.5, or j’ai quelques problèmes de compatibilité, liés au fichier pentaho-bi-platform-plugin-actions-3.5.0.stable.jar. En effet, l’export HTML est dafaillant (pas d’image), l’export Excel impossible et la planification d’envoi d’email ne fonctionne pas car il ne trouve pas la locale. Sur la version 3.0, Bart Maertens avait fourni un fichier corrigeant ces quelques bugs mais, sur la version 3.5 je n’ai rien trouvé de satisfaisant.

    Je me demandais donc si tu utilisais désormais BIRT avec Pentaho 3.5 et si du coup tu avais ce cher pentaho-bi-platform-plugin-actions-3.5.0.stable.jar corrigé.

    Merci d’avance

  6. Salut [Sébastien ? Stéphane ? Sylvain peut-être qui sait … 😉 ]

    Chez nos clients pour l’instant on utilise BIRT + Pentaho uniquement pour générer du PDF ou du HTML (sans images le HTML, en effet ça ne fonctionne pas).

    Pour la planification des rapports BIRT par email, de mon côté ça fonctionne bien en passant par une xaction qui génère un rapport BIRT et en planifiant celle-ci avec le scheduler.
    Par contre l’archivage des rapports BIRT sur le serveur ne fonctionne pas, j’ai d’ailleurs ouvert un ticket chez Pentaho à ce sujet.
    Cf http://jira.pentaho.com/browse/BISERVER-4060.

    En espérant avoir fait avancer le schmilblick…

    Sylvain

  7. Salut,

    comme tu l’as vu tu as un problème de locale. J’ai le même problème lors de la planification (notamment l’envoi par email) car BIRT cherche à utiliser la locale de l’utilisateur (et il n’en trouve donc pas). Sur la version 3.0 Bart Maertens avait corrigé ce problème en lui faisant utiliser la locale de la JVM. Son fichier pentaho-bi-platform-plugin-actions-3.0stable.jar permettait de corriger le problème (et également de faire fonctionner l’export .doc/.xls et d’avoir les images en html). Tu peux retrouver le fichier ici : http://forums.pentaho.org/showthread.php?t=72141. Pour autant ce n’est que sur la version 3.0… je n’ai rien trouvé pour la version 3.5.

    Bonne continuation

    Simon (c’était pas loin 😉 )

  8. Salut Simon,

    En fait pour être vraiment « clean » il faudrait intégrer les modifications de Bart Maertens dans le SVN de Pentaho sur la v3.5.
    Je t’avoue que ça me tente bien, le problème est que je suis un peu pris en ce moment et que ça va être dur de trouver du temps pour ça… 🙁

    Mais bon, une âme charitable va peut-être le faire ? 😉

    A+

  9. oui je l’ai testé

    ça corrige une petite partie de mes besoins, en l’occurrence les images et graphiques s’affichent bien en HTML mais c’est tout (pas de planif, pas de Excel)
    c’est dommage

    merci quand même

1 Trackback / Pingback

  1. Intégration du BIRT Viewer 2.6 dans Pentaho 3.6 - Le blog technique

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.


*