Présentation du CMS Jahia Digital Factory

Digital Factory

Près de 40% des sites web utilisent des CMS, logiciels destinés à simplifier la mise en ligne. Si le site CMSMatrix recense 1200 Systèmes de Gestion de Contenu (CMS) différents, seuls quelques poids lourds parviennent à se tailler la part du lion :

  • 60.4% des sites équipés de CMS utilisent WordPress, 7.2% Joomla et 5.2% Drupal. 6 autres CMS obtiennent 1% ou plus de part de marché. Tous les autres sont à moins de 1%.
  • WordPress, Joomla et Drupal sont aussi les CMS affichant la croissance la plus importante actuellement.
  • Du côté des serveurs, les CMS sont à 82% en PHP. Java est 3ème (3%) et est le langage bénéficiant de la meilleure dynamique actuellement.

(statistiques issues du site W3Techs)

Ces chiffres tendent à montrer que le marché des CMS est une jungle où il est difficile de s'imposer en tant qu'éditeur. Pour les utilisateurs de CMS génériques, le chemin semble lui tout tracé et consiste à éviter tout logiciel sortant du rang.

Quels intérêts pourrait-il alors y avoir à choisir un CMS "exotique" plutôt qu'un des poids lourds ? Dans le cas de Jahia, dont il sera question dans cet article, cela peut venir des raisons suivantes :

  • La création d'un site pour un organisme ou une entreprise de grande taille doit se voir dans le cadre de son intégration avec un système d'information complet. J2EE étant une spécification fréquemment utilisée, l'utilisation d'un CMS suivant les mêmes normes permettra par la suite une plus grande simplicité de mise en oeuvre et une évolutivité importante.
  • Le langage Java étant utilisé par un grand nombre de développeurs, un CMS utilisant ce langage peut sembler un choix cohérent
  • Il peut y avoir des besoins importants en terme de customisation des types de contenus, catégorisation, multi-linguisme, gestion multi-site. Dans ces situations, certains CMS s'en sortent mieux que d'autres.

L'objectif de Jahia Digital Factory est de se placer dans la cour des grands des CMS génériques, en proposant en standard dans un environnement J2EE un grand nombre de fonctionnalités avancées.

Positionnement de Jahia

logo.png (Logo)

Jahia, qui est à l'origine de Jahia Digital Factory, est un groupe suisse. Son métier est l'industrialisation digitale.

Son objectif est de créer "un processus digital ininterrompu depuis l'expression du besoin métier jusqu'à la livraison de sa traduction digitale en réduisant le time-to-market et le TCO, projet après projet". Cela peut se traduire par :

  • Un espace de travail partagé entre les équipes technique et marketing.
  • Un travail simplifié pour les équipes marketing. La gestion des différents canaux, des localisations, la facilité d'assemblage de nouveaux sites doit être facile à réaliser.
  • La capitalisation des investissements déjà réalisés et la facilité de réutilisation de modules grâce à des App Stores.

Jahia édite plusieurs logiciels qui reposent sur le même paradigme et partagent le même socle technique :

  • Jahia Digital Factory est un CMS puissant, flexible, extensible et simple à utiliser.
    • Form Factory est un complément à Digital Factory permettant de créer et gérer aisément des formulaires
  • Portal Factory est une solution d'agrégation d'applications.
  • Workspace Factory est une solution de partage de documents.
  • Commerce Factory est une plateforme en cours de développement dont l'objectif est l'adjonction d'un moteur d'e-commerce aux applications déjà existantes.

Jahia a un nombre grandissant de références industrielles et institutionnelles. Il propose un système de double-licence :

  • Une licence GPL v2 pour les projets Open Source et non-commerciaux.
  • Une licence spécifique (JSEL : Jahia Sustainable Enterprise License) pour l'utilisation commerciale. Elle repose sur le principe "payer ou contribuer". Dans le cas de Digital Factory, quelques fonctionnalités supplémentaires de haut niveau sont incluses avec cette licence.

Présentation technique de Jahia Digital Factory

Nous présenterons ici la version 7.0 de Jahia Digital Factory, qui est la version à jour de l'application.

Packaging

Jahia Digital Factory se présente sous la forme de 2 packages différents :

  • Un environnement de déploiement/production qui se décline en une version Enterprise (sur laquelle s'applique la licence JSEL) et une version Community (gratuite et Open Source).
  • Un SDK (Digital Studio) qui contient une instance de déploiement et un studio complet. Lui aussi se décline en versions Enterprise et Community.

Le fichier téléchargé est sous la forme d'un installer exe (Windows) ou d'une archive (Mac/Linux) pour l'environnement de production et sous la forme d'une archive pour le SDK.

Une fois installé, Jahia Digital Factory est par défaut sous la forme d'un applicatif Tomcat sur lequel ont été rajoutés un certain nombre d'éléments, ce qui fait que quelqu’un ayant de l'expérience avec Tomcat, peut facilement le prendre en main (démarrage/arrêt, configuration de base). Il est cependant possible de faire fonctionner Jahia avec n'importe quel autre serveur d'application.

En ce qui concerne la base de données, Jahia fonctionne par défaut avec Apache Derby mais on peut connecter l'application à tout autre SGBD avec un minimum de configuration.

Jahia Digital Factory est très vite opérationnel, notamment sur un poste de développement, ce qui est très appréciable.

Présentation du Digital Studio

Digital Studio est le SDK de Jahia Digital Factory. Sa fonction est de créer les modules et les templates dont tout site aura besoin par la suite. Ceci se fera dans le mode Studio caractéristique du SDK. Presque tout peut se faire en ligne depuis le SDK, qui a pour vocation d'être l'IDE associé au CMS. Ainsi l'éditeur de fichiers peut formater le code source et faire de la coloration syntaxique (XML, HTML, js, css, JSP, properties). En fonction du fichier en cours d'édition, on pourra aussi avoir accès à de nombreux snippets simplifiant le développement.

Editeur de jsp Jahia et snippets

L'éditeur de code intégré au studio. Le texte est coloré en fonction du type de fichier ouvert, les snippets accessibles sont également adaptés.

Le SDK intègre Git/SVN pour la gestion de version, et Maven pour le déploiement. Le travail collaboratif en est ainsi simplifié. L'application gère le clic droit, le glisser-déposer, le double-clic, ce qui rend le développement très intuitif.

Jahia peut se connecter à un App Store. Il en existe une version publique et officielle, disponible quelle que soit la distribution. Si cet App Store est relativement peu fourni par rapport à celui de WordPress par exemple ("seulement" 75 modules), les fonctionnalités développées sont suffisamment variées pour couvrir un nombre important de besoins et les modules sont de bonne qualité. Une fois le besoin identifié, le choix du module adéquat sera par conséquent facilité. Dans la version Enterprise, il est possible d'utiliser un App Store privé pour entreposer ses modules.

Scénario de la création d'un set de templates

La création d'un set de templates pour un site reposera généralement sur les phases suivantes :

  1. Initialisation du set.
  2. Incorporation des modules nécessaires au bon fonctionnement de notre set.
  3. Création des types des données nécessaires : quels sont les champs, quel est le comportement général de l'objet ? Il n'est pas nécessaire de manipuler les fichiers de properties, une IHM simplifie le travail.
  4. Création des vues associées aux types de données utilisés : comment s'affiche l'objet en fonction du contexte ?
  5. Manipulation des templates : création des types de pages, intégration des différents contenus (pour les objets ou listes d'objets, c'est ici qu'on spécifiera le contexte et donc le mode d'affichage). Cette partie utilise majoritairement le glisser-déposer et les clic-droits.

Toutes ces manipulations peuvent s'effectuer de manière très intuitive, en restant dans l'IDE en ligne.

Le déploiement du set est lui-même très simple, puisqu'un bouton existe dans l'interface pour lancer l'outil Maven.

Digital Factory dispose d'un module intégré de gestion des documents. Ce dernier contient un éditeur d'images qui permet de redimensionner, tourner et recadrer. En cas de tentative de suppression d'un fichier, une vérification est faite pour vérifier qu'il n'est pas utilisé.

Document Manager

Un aperçu de l'éditeur de documents intégré à Jahia Digital Factory. La partie de gauche permet de naviguer entre les répertoires. Dans la partie de droite, le cadre du haut affiche la liste des documents (plusieurs modes d'affichage existent), un clic droit permet d'accéder aux actions disponibles ; le cadre du bas affiche les détails d'un document.

Une part importante du développement moderne est la prise en compte du responsive design. Jahia est bien placé dans ce domaine grâce à sa gestion du rendu multi-canal, intégré d'office. Cela se caractérise notamment dans le studio par un support natif de Bootstrap et Grid960.

Edition d'un site web

Il existe 2 modes d'édition dans Jahia :

  • Un mode d'édition pur qui donne accès à une arborescence du site et aux pages côte à côte.
  • Un mode contributif différent du mode visualisation où on navigue dans le site et on peut le modifier dans le contexte avec des double-clics ou des clics droits.

Lorsqu'on édite un élément d'une page, on a accès à un grand nombre d'onglets et de champs donnant une idée de l'étendue des fonctionnalités de Jahia. Tous les textes riches sont modifiables en mode WYSIWYG grâce à l'éditeur CKEditor, qui est extensible grâce à des plugins. De nouveaux éléments peuvent être ajoutés ou déplacés par glisser-déposer. Tout ceci donne au mode édition une ergonomie réussie.

Le niveau de liberté laissé aux auteurs de contenus par les développeurs est entièrement paramétrable grâce à la manipulation des templates et la gestion des droits.

Digital Factory permet de gérer le multi-linguisme et dispose d'une interface de traduction très intuitive.

Outil de traduction Jahia

L'outil de traduction intégré au Digital Factory. A gauche, les originaux, à droite le formulaire de traduction manuelle.

Dans le cadre du responsive design, il est à noter que Jahia Digital Factory intègre des émulateurs pour de nombreux supports et permet de définir les contenus affichés pour chacun d'entre eux.

Émulateur iPhone de Jahia

L'émulateur iPhone (mode portrait) intégré à Jahia

Administration de Jahia

Le mode Administration de Jahia Digital Factory donne accès à de nombreuses fonctionnalités en standard. La gestion des rôles et des droits est très avancée et permet de gérer très finement les permissions des différents utilisateurs.

Digital Factory autorise la gestion multi-site. Depuis une installation de Jahia, on peut manipuler plusieurs domaines, chacun ayant son URL, des templates, sa charte, ses fonctionnalités, ses utilisateurs/éditeurs. Chacun des sites créés peut être aisément exporté dans un seul fichier et aussi facilement réimporté sur une autre instance.

Avis sur Jahia Digital Factory

Dans cette version 7.0, Jahia Digital Factory est un CMS complet, flexible et simple d'utilisation.

Les différentes analyses à son sujet mettent en évidence ces avantages. Le point négatif fréquemment relevé vient de la taille modeste de l'éditeur Jahia. Encore peu connu, un nombre restreint (même si grandissant) de références, ces points peuvent faire peur.

Un point d'interrogation légitime dans ce genre de situation est de savoir si le support associé à l'outil est suffisant, que ce soit en termes de support payant comme en documentation gratuite accessible sur Internet. Celle de Jahia Digital Factory est complète et permet une relative indépendance sur le produit. Le produit semble par conséquent suffisamment mature face aux concurrents du domaine.

Un commentaire

Laisser un commentaire

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

Captcha *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.