Liferay

Liferay est un éditeur indépendant de solutions de portail open source, de gestion de contenu, de collaboration sociale et de commerce en ligne B2B, en langage Java.

Liferay
Informations
Développé par Liferay, Inc
Première version
Dernière version 7.4 GA3 ()
Dépôt github.com/liferay/liferay-portal
Écrit en Java
Environnement multi-plateforme
Langues anglais (principalement)
Type CMS
Licence LGPL License et propriétaire
Site web www.liferay.com

Liferay dispose de 22 filiales[1] et bénéficie d’une présence dans 40 pays grâce à son écosystème de partenaires.

Histoire

A l'origine, la technologie Liferay a été créée, en 2000 à Los Angeles, par Brian Chan pour fournir une solution de portail aux associations à but non lucratif.

Par la suite, de nombreuses entreprises ont commencé à utiliser cette version communautaire pour leurs besoins internes. La société Liferay, Inc. a ainsi été fondée en 2004 en réponse à la forte demande de support entreprise.

Cet élan initial a été confirmé en 2008 avec l’entrée dans la partie « Visionnaire » du Magic Quadrant Gartner pour les portails horizontaux, avant de passer dans la partie « Leader » en 2010, au même titre que les solutions des grands éditeurs propriétaires. En 2018, Liferay a été nommé "Leader" dans le Gartner Magic Quadrant for Digital Experience Platforms[2].

Présent en Europe via une filiale allemande en 2007, Liferay s’est implanté directement en France en début d’année 2012.

Présentation

Liferay s’appuie, sur un serveur d'applications JEE.[pas clair]. Le serveur d'applications peut être Tomcat, Jboss Wildfly, Jetty ou Websphere... La matrice des compatibilités de Liferay est disponible sur le site officiel : [3].

Liferay étant en Java, il peut donc être installé aussi bien sur un serveur Unix, Linux, Windows ou Mac. L'important étant d'avoir une JVM au moins Java 8.

Liferay s'interface avec plusieurs bases de données différentes : IBM DB2[4], MySQL, Oracle, PostgreSQL, Amazon Aurora, SQL Server ou encore une base de données HSQL pour un usage limité (démonstration, tests...).

Une fonction de cache (EhCache) accélère le traitement du contenu statique et Liferay peut exploiter un équilibrage de charge matériel.

La recherche et l'indexation repose sur Elasticsearch par défaut mais peut aussi fonctionner avec Solr.

L'indexation permet d'effectuer des recherches fulltext mais aussi des recherches synonymes et/ou proches sur différents contenus et permet d'accélérer la recherche de contenus sans passer par une base de données relationnelle classique. Il est donc possible d'effectuer une recherche soit via la base de données soit via le système d'indexation NoSQL.

L'indexation peut à tout moment être reindexé sachant que les données en elles-mêmes sont stockées en base de données et/ou dans la GED.

La GED stocke les fichiers, images, vidéos et/ou documents en les catégorisants et hierachisants soit en utilisant une GED interne à Liferay, soit en utilisant une GED externe telle qu'une GED externe compatible CMIS (Documemtum, Alfresco...) ou S3 (Amazon...) ou autres...

Liferay peut aussi s'utiliser en tant qu'usine à sites et permet la création de template de sites, template de pages... Un site, une page et/ou un contenu peuvent donc être répliqués, partagés et/ou modifiés de façon hiérarchique (ou non depuis la version 7.3 avec les asset librairies).

Une modification sur un site parent (ou autre depuis la version 7.3) peut se répliquer sur d'autres sites et/ou pages.

Liferay gère aussi bien la scalabilité horizontale que verticale soit en ajoutant de la mémoire et/ou de la CPU, soit en mode cluster aussi bien au niveau de la base de données que du reverse-proxy ou du Liferay en lui-même.

Il est donc possible d'avoir plusieurs instances de Liferay sur des serveurs différents permettant un usage 24h/24 et 7j/7 sans interruption de service et de session utilisateur.

Fonctionnalités

Liferay est notamment compatible avec les portlets 1.0 (JSR 168), 2.0 (JSR 286) et 3.0, JSR 170 (Java Content Repository (en)), WSRP (consommateur uniquement). Il est compatible avec la plupart des systèmes d’exploitation, serveurs d’applications (Tomcat, Wildfly, Websphere, Weblogic, Jboss...) et bases de données (PostgreSQL, MySQL, Oracle, SQL Server, Aurora, MariaDB...). Il embarque des fonctionnalités de gestion de contenu (Liferay journal) qui permettent de restituer des contenus formatés (XSL, Velocity et Freemarker) sur les pages du portail à travers des portlets dédiés. Une multitude de portlets sont fournis avec la solution et permettent de mettre en place les fonctionnalités de base d’un portail intranet facilement et rapidement.

Dans les nouvelles versions la notion de fragment a été mise en place et permet d'utiliser des fragments de base (façon JSfiddle ou CodePen), d'en créer, de les modifier et de les composer directement en live, mais aussi de les importer/exporter.

Les versions 7.x se basent sur la norme OSGi et font de Liferay une plateforme modulaire et moderne alors que les versions antérieures étaient considérées comme "monolithiques".

Depuis la version Liferay 7.1, Liferay est passé de Bootstrap 3 à Bootstrap 4 et propose un module Liferay Commerce permettant d'ajouter une brique B2C et B2B, ainsi qu'une première ébauche de pages de contenus basées sur des fragments.

Il est aussi possible de créer des portlets javascript en Angular, React ou Vue.js et la possibilité d'autres frameworks JS.

Une approche micro-frontend est donc très facilement realisable avec la possibilité de partager des librairies communes entre composants, comme des librairies Angular 11, Billboard, Datables, d3js... ces librairies pourront donc être chargées qu'une seule fois au moment de leur utilisation permettant optimisation et flexibilité des éléments affichés.

La version 7.2 améliore les pages de contenus et la segmentation des utilisateurs et apporte une fonctionnalité de A/B testing ainsi que des fonctionnalités de HeadLess.

La version 7.3 apporte de nouvelles fonctionnalités comme les publications permettant de faire des modifications des pages des sites sans les publier en offrant la possibilité de les publier en live ou de programmer leur publication en avance de phase. Cette version apporte également l'amélioration des fragments, le support d'Open Graph, d'Open API, de GraphQL, gestion des erreurs 404, possibilités de création de modules "Low-code"... Mais aussi le concept de Master Page et de librairies partagées (il est donc désormais possible de partager des ressources sans forcément avoir une notion de hiérarchie).

La version 7.4 encore au stade communautaire (donc sans support) améliore encore les fragments et apporte des améliorations sur l'upload des fichiers du Liferay Forms, les images adaptatives, l'intégration de vidéos externes, le Liferay Commerce...

Les prochaines releases de la version 7.4 devraient améliorer la partie commerce, traduction, interface avec des chatbots[5], édition des images, référencement SEO...

Produits

Liferay se décompose en trois produits :

  • Liferay Digital Experience Platform (Liferay DXP) est une plate-forme numérique pour créer des solutions web flexibles telles que des portails clients, des intranets et des sites web publics.[6]
  • Liferay Commerce est une solution pour créer des sites de vente en ligne dédiés au B2B.[7]
  • Liferay Analytics Cloud est un outil d'analyse web qui agrège et analyse les données clients ainsi que la performance des outils marketing[8].

Versions

Liferay DXP est disponible en deux versions différentes :

  • Community Edition (CE) : version gratuite, supportée par la communauté Liferay qui de base est identique à la version payante avec quelques modules en moins mais qui oblige à migrer régulièrement pour rester à jour en cas de bugs[9] et/ou failles. En effet, l'utilisation de la version gratuite implique d'effectuer des montées de version annuelle car seule la version en cours est mise à jour. Les versions précédentes peuvent être patchées mais nécessitent un effort assez conséquent afin d'appliquer les patchs de sécurité rétroactivement.
  • Enterprise Edition (EE) : version payante, incluant les services de support et de mise à jour ainsi que quelques modules supplémentaires comme le connecteur SAML par exemple. Cette version permet d'obtenir des patchs (tous les 2 mois environ) et/ou hotfix (en cas de bug avéré et sur demande) pour une durée d'environ 6 ans, de façon à toujours avoir une version à jour et sécurisée de la version utilisée. Par exemple, la version 7.0 parue il y a quelques années propose déjà son 100e patch qui permet de maintenir une version sécurisée et/ou corrigée sans besoin de partir sur une migration plus lourde avec l'utilisation du "patching tool" fournit par Liferay.

Évolutions

Liferay 6.1

La version de Liferay 6.1 est sortie en version entreprise début 2012. Elle a notamment simplifié la gestion des communautés et enrichi la gestion de contenu. La gestion documentaire a été refondue et vient à présent avec un client à la « Dropbox » : Liferay Sync qui permet de synchroniser les documents distants avec un dossier local ou sur un mobile.

Une marketplace se voulant être un « App Store » pour les extensions Liferay a été introduite en .

Liferay 6.2

La version 6.2 est sortie en . Elle vise à faciliter la gestion des documents, rendre plus robuste la plateforme et fournir plus d’outils pour les versions mobiles.

Liferay 7.0

La version 7.0 est sortie en . Elle se veut plus modulaire en s'appuyant sur le standard de composants OSGi ; elle améliore aussi, entre autres, la gestion des formulaires ainsi que le rendu sur terminaux mobiles [10].

Liferay 7.1

La version 7.1 est sortie en . Elle apporte plus de souplesse dans la création de pages et de formulaires dynamiques personnalisés, et un développement mobile et multi-plateformes amélioré.

Liferay 7.2

La version 7.2 sortie en juin 2019 apporte une interface agréable et permet la publication et la gestion de contenu à des utilisateurs qui n’ont aucune compétence en développement.

Liferay 7.3

la version 7.3 sortie en octobre 2020 a mis un accent très fort sur l'expérience utilisateur avec la promesse d'offrir à "chaque utilisateur une expérience personnalisée". Liferay DXP offre désormais sur la même plateforme la possibilité de créer des sites dynamiques complet et rapidement.

Notamment avec les publications, permettant de créer/modifier un site et de publier ces modifications en une seule fois en live ou à une date précise. Mais aussi via le partage d'asset librairies entre sites permettant le partage sans notion de hiérarchie.

Cette version améliore aussi le HeadLess, la gestion des erreurs 404, le low-code, l'OpenAPI, la gestion des fragments, des providers, Open Graph et le Liferay Commerce (qui passe en version 3.0), ainsi que de nombreux autres composants et technologies...

Liferay 7.4

La version 7.4 sortie en Avril 2021 en version communautaire est une première ébauche de la version DXP qui sortira en fin d'année 2021[11].

La version GA1 est le socle de la version 7.4 et apporte des améliorations sur le Liferay Forms, les pages de contenus et sur le Liferay Commerce.

La version GA2 est sortie le 15 juin 2021, elle améliore la version de base en ajoutant des fonctionnalités mineures, c'est la seconde version avant la version officielle prévue pour la fin d'année 2021 [12]

La version GA3 est sortie le 4 août 2021, elle améliore la partie Commerce, le SEO avec l'intégration d'une interface avec PageSpeed, la traduction automatique, une meilleure configuration de SAML, l'intégration avec DocuSign et différents LiveChat... pour plus d'informations, voir la réference suivante : [13]

Ces versions font partie d'une saga de 5 à 7 releases avant la version 7.4 DXP supportée par Liferay[14].

Notes et références

  • Portail des logiciels libres
  • Portail de l’informatique
Cet article est issu de Wikipedia. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.