JasperReports Server: Installation du WAR sous Ubuntu et MariaDB

Depuis la récente sortie de JasperReports Server en version 5.2, il est maintenant possible d’installer ce serveur de documents sur une base de données MariaDB en natif sans devoir installer un driver externe, je vais vous décrire toutes les étapes d’installation pour vous faciliter la tâche.

Introduction

Si vous avez lu mon précédent article sur cette excellente base de données qu’est MariaDB, vous aurez compris pourquoi cette installation est identique à une installation sur Mysql, pour rappel, cette DB a été conçue pour être 100% compatible. Jaspersoft profite donc de cette compatibilité pour ajouter le support d’une DB supplémentaire.

Bundle JasperServer

Pour installer JasperReports, Jaspersoft nous fourni un bundle d’installation complet composé de Java 1.7, Tomcat 7 et une base de données Postgres 9, cette installation est aisée et complétement automatique mais malheureusement beaucoup de personnes (moi y compris) souhaitent conserver la main sur le processus d’installation de l’outil, il est plus rassurant d’installer chaque composant un-à-un pour en assurer le suivi et la maintenance. Une autre raison évidente est le fait que certains ne connaissent purement est simplement pas Postgres et se sentent plus à l’aise avec une autre base de données qu’ils connaissent.

Voici les autres bases de données compatibles :

  • Mysql (et donc MariaDB)
  • PostgreSQL
  • IBM DB2
  • Oracle
  • Microsoft SQL Server

But de l’article

L’installation manuelle n’est pas vraiment compliquée mais nécessite de nombreux téléchargements et de manipulations qui seront nécessaires pour « préparer » votre système d’exploitation à accueillir JasperReports, mon but sera de supprimer les téléchargements manuels en passant par apt-get mais aussi en fournissant toutes les commandes Linux relatives au paramétrage des pré-requis.

Système d’exploitation Ubuntu

Mon choix se porte sur cette distribution exploitée par beaucoup, je vous invite à lire mon article sur l’installation d’une VirtualBox si vous ne disposez pas d’un environnement Ubuntu prêt à l’emploi, j’explique comment installer une machine virtuelle basée sur Ubuntu 12.04, même si JasperSoft recommande la 10.04 dans sa documentation, je n’ai pas vu de bug ou de plantage dans son utilisation.

Installation des pré-requis

Je vais donc accélérer l’installation manuelle du WAR de JasperReports en fournissant un script automatique Ubuntu prêt à l’emploi.

Pour commencer l’installation, il faut trois éléments indispensables, décrit dans le Guide d’installation de Jasperserver

  • Une machine virtuelle java et ses variables d’environnements
  • Un serveur web avec les bons paramètres d’exécution
  • Une base de données pour stocker le référentiel jasper et éventuellement les données (le stockage des données n’est pas recommandé)

Voici le lien de mon script complet pour l’installation et le paramétrage de chaque élément, il suffit de le lancer et Ubuntu fera le reste 😉

Pour se faire:

 $sudo chmod 755 Pre_Install_Jasperserver.sh
$ ./Pre_Install_Jasperserver.sh

Manuellement, les commandes à lancer sont les suivantes :

Java 1.7

 #Java7
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
echo "JAVA_HOME=/usr/lib/jvm/java-7-oracle" | sudo tee -a /etc/environment
source /etc/environment

Tomcat 7

 #Tomcat7
sudo apt-get install tomcat7 tomcat7-admin
sudo touch /usr/share/tomcat7/bin/setenv.sh
echo JAVA_OPTS=\"-Xms1024m -Xmx2048m -XX:PermSize=32m -XX:MaxPermSize=128m -Xss2m -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled\" | sudo tee -a /usr/share/tomcat7/bin/setenv.sh
/etc/init.d/tomcat7 restart
echo "CATALINA_HOME=/usr/share/tomcat7" | sudo tee -a /etc/environment
echo "CATALINA_BASE=/var/lib/tomcat7" | sudo tee -a /etc/environment
# able to start Tomcat7 with ubuntu starting
echo "JAVA_HOME=/usr/lib/jvm/java-7-oracle" | sudo tee -a /etc/default/tomcat7
source /etc/environment

MariaDB

#MariaDB
sudo apt-get install python-software-properties
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db
sudo add-apt-repository 'deb http://mariadb.cu.be//repo/5.5/ubuntu precise main'
sudo apt-get update
sudo apt-get install mariadb-server 

Lors de l’installation de MariaDB, un mot de passe sera demandé, il devra être renseigné dans un fichier de configuration plus loin dans l’installation de JasperReports, vous pouvez encore gagner une modification en utilisant le mot de passe « password » par défaut.

Installation de JasperServer

C’est ici que l’installation proprement dite commence, téléchargez le WAR JasperServer et décompressez-le dans un répertoire quelconque. L’étape suivante consiste à modifier un fichier properties correspondant à votre base de données, il suffit d’ajouter les paramètres de connexion de la DB puis de le renommer avec un nom spécifique.

Le fichier à modifier qui nous intéresse est mysql_master.properties qui se trouve dans <js-install>/buildomatic/sample_conf, une fois modifié, placez-le dans le répertoire racine de sample_conf, c’est-à-dire <js-install>/buildomatic/

cd <js-install>/buildomatic/sample_conf
sudo cp mysql_master.properties ../default_master.properties
cd ..
sudo nano default_master.properties 

Modification de defaukt_master.properties

Laissez le serveur Tomcat7 déjà mis par défaut puis paramétrer ensuite son chemin d’installation, reste à définir le mot de passe de la DB choisi lors de l’installation de MariaDB.

Lancez maintenant l’installation de JasperReports Server avec la commande js-install.sh, il ne vous reste plus qu’à attendre le bon déroulement de l’opération 😉

Fin de l'installation de JasperReports server

Une fois que l’outil est installé, je vous conseille de redémarrer Tomcat pour pouvoir se connecter la première fois.

sudo service tomcat7 restart
#ou bien
sudo /etc/init.d/tomcat7 restart 

Lancez un navigateur et taper l’url suivante: http://localhost:8080/jasperserver

Ecran accueil JasperReports server

Connectez-vous avec le login jasperadmin et mot de passe jasperadmin (ou bien avec superuser / superuser qui donne accès à des menus de configurations supplémentaires)

Conclusion

Vous voila maintenant prêt à exploiter le serveur de rapports de Jaspersoft, d’autres tutoriels viendront par la suite pour vous montrer quelques exemples d’utilisation, en attendant voici le lien de toute la documentation officielle disponible.

Notez que tout est déjà configuré pour redémarrer avec la machine, si vous décidez de l’installer sur un serveur qui sera mis en production, ce point est d’ores et déjà résolu 😉

0 thoughts on “JasperReports Server: Installation du WAR sous Ubuntu et MariaDB

  1. TSAGAANOVOO

    Bonjour JS,

    As-tu un peu de temps pour faire un tuto sur js-export –everthing –output-dir testexport.zip (JasperServer 4.5.0)?
    J’ai un problème comme quoi je n’ai pas le fichier js.jdbc.properties… Je suppose qu’il faut générer le fichier mais, je n’ai pas non plus le fichier default_master.properties dans /jasper/jasperreports-server-cp-4.5.0-bin/buildomatic …
    Je suis un peu perdu…

    Merci d’avance.

    • Hello,
      Concernant le backup de Jasper Reports, j’ai créé un script dédié qui peut être programmé dans une crontab, il suffit de modifier les paramètres correspondant à ta configuration.
      S’il te manque des fichiers pour une version particulière, il suffit de télécharger l’archive de ta version disponible ici
      Je te conseille fortement de migrer vers une version plus récente, le moteur étant plus performant et moins buggué 😉
      Bon courage

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> 

Petit calcul pour valider votre commentaire! merci * Time limit is exhausted. Please reload CAPTCHA.