4 nov. 2021, 14:49:28 tdu

Installation d’une application Lutèce

Table des matières

  1. Outils nécessaires
  2. Configurations préalables
  3. Build et déploiement de l’application
  4. Configuration de l’application en Back Office

Outils nécessaires

Voir dev_tools pour connaitre les outils nécessaires à l’installation d’une application Lutèce.

Configurations préalables

Avant de lancer la construction de l’application, que ce soit à partir des sources d’un composant Lutèce ou d’un site, il faudra s’assurer que les propriétés nécessaires au fonctionnement du core et des composants sont bien renseignées. Reportez-vous à la documentation pour savoir quelles propriétés doivent être modifiées.

La modification de chaque fichier properties pourra s’effectuer soit en modifiant le fichier d’origine dans les sources (s’il existe), soit en créant une surcharge de celui-ci. Vous pouvez lire les wikis overlays et lutece_maven_plugin pour en savoir plus sur la manière d’apporter des surcharges de fichier pour une application Lutèce.

Les configurations suivantes sont valables pour toutes les applications.

Configuration de la base de données

Parmi les propriétés à renseigner, la connexion à la base de données de votre application est définie dans un fichier db.properties provenant de Lutèce Core. Il faudra modifier les propriétés portal.url, portal.user et portal.password de ce fichier en fonction de votre serveur de base de données.

Exemple pour une base MySQL :

portal.url=jdbc:mysql://localhost/my_db_name?autoReconnect=true&useUnicode=yes&characterEncoding=utf8
portal.user=root
portal.password=motdepasse

Voir la partie Les pools de connexions et db.properties dans data_access pour plus d’informations sur la configuration du db.properties.

Données d’initialisation des plugins (optionnel)

Le fichier //plugins.dat// situé dans l’application dans le dossier //WEB-INF/plugins// est un fichier de propriété ramené par Lutèce Core et servant à initialiser lors du premier démarrage de l’application, les données concernant les plugins.

Deux propriétés peuvent être définies :

  • une propriété indiquant si le plugin est installé. Si la propriété possède la valeur 1, le plugin sera installé. Si la propriété n’est pas présente ou possède une autre valeur, le plugin ne sera pas installé.
  • une propriété indiquant le nom du pool de connexion à utiliser pour le plugin. Si la propriété n’est pas présente, le pool //portal// sera utilisé par défaut.

Chaque plugin est référencé à partir du nom qui lui a été donné dans son descripteur (fichier propre au plugin situé dans le même répertoire que plugins.dat; le nom est situé dans la balise name en début de fichier).

Exemple :

myplugin.installed=1
myplugin.pool=mypool

Build et déploiement de l’application

Build du projet

Vérifiez dans le fichier //pom.xml// que la version du //lutece-global-pom// dans la balise //parent// est bien supérieure ou égale à 5.1.0 pour les composants et 3.1.0 pour les sites (et corrigez si nécessaire).

Lancez un build de l’application pour prendre en compte cette nouvelle configuration :

  • pour un composant
$ mvn clean lutece:exploded
  • pour un site
$ mvn clean lutece:site-assembly

Initialisation de la base de données

Lancez la commande Ant suivante afin d’initialiser une base de données pour l’application :

$ ant -f target/<exploded_directory>/WEB-INF/sql/build.xml

<exploded_directory> est le nom du dossier dans lequel ont été placés les fichiers de l’application :

  • avec le goal lutece:exploded, ce dossier est nommé //lutece//
  • avec le goal lutece:site-assembly, ce dossier est nommé en fonction de l’artifactId et de la version du projet (voir dans le pom.xml du projet)

Une nouvelle base de données est alors créée sur le serveur de base de données en fonction des informations du db.properties.

Avec le goal lutece:exploded, on peut aussi utiliser le goal antrun:run qui fait le même traitement que cette commande. La commande effectuée lors du paragraphe précédent pourra donc être la suivante :

$ mvn clean lutece:exploded antrun:run

Configuration et lancement du Tomcat

Nous pouvons à présent déployer notre site sur Tomcat.

Pour cela, modifiez le fichier //server.xml// dans le dossier //tomcat/conf// de votre Tomcat, en ajoutant une balise Context :

<Host ...>
    ...
    <Context docBase="(...)/myapp/target/<exploded_directory>" path="/myapp" workDir="(...)/myapp/target/<exploded_directory>/work" />
</Host>

<exploded_directory> est le nom du dossier dans lequel ont été placés les fichiers de l’application :

  • avec le goal lutece:exploded, ce dossier est nommé //lutece//
  • avec le goal lutece:site-assembly, ce dossier est nommé en fonction de l’artifactId et de la version du projet (voir dans le pom.xml du projet)

Démarrez Tomcat et vérifiez ensuite que le site est bien accessible sur l’URL http://localhost:8080/myapp/ (remplacez le port utilisé par Tomcat si nécessaire, par exemple 8084).

Si vous utilisez NetBeans, vous pouvez consulter le wiki correspondant au paramétrage de Tomcat depuis NetBeans.

Configuration de l’application en Back Office

Accès au Back Office

Aller dans la partie //administration// du site à l’adresse http://localhost:8080/myapp/jsp/admin/AdminMenu.jsp et s’authentifier avec le compte admin par défaut :

  • login : admin
  • mot de passe : adminadmin

Changement du mot de passe

Si votre application doit contenir des données sensibles ou accéder à des ressources de travail (API métiers, SI…), il faudra procéder au changement du mot de passe par défaut du compte admin. Pour cela, dans le menu déroulant en haut à droite de l’écran du Back Office, cliquez sur Mot de passe. Une fois le changement effectué, vous devrez vous reconnecter.

Activation des plugins

Sélectionnez dans le menu Système, l’entrée Gestion des Plugin. Sur la page qui s’affiche, activez tous les plugins nécessaires en cliquant sur les boutons verts à droite de l’écran.

Mise à jour des droits de l’utilisateur admin

Sélectionnez dans le menu Gestionnaires, l’entrée Gestion des utilisateurs. Sur l’écran qui s’affiche, sélectionnez le bouton Modifier du user admin.

Sur la page correspondante, allez sur l’onglet Droits, puis cochez les cases correspondant aux fonctionnalités auxquelles vous souhaitez accéder, et appliquez les modifications en cliquant sur le bouton Appliquer cette liste de droit en bas de page.

En fonction de ce que vous désirez utiliser, il sera peut-être également nécessaire de mettre à jour les rôles et les groupes de travail de l’utilisateur admin dans les onglets correspondants en réappuyant sur Modifier au niveau de l’utilisateur admin.