Liferay Portal – Open Source

Date: 14/02/2007 | Catégories: Open-source,Web | Tags: ,,,

Liferay est un portail J2EE open source conforme à la norme JSR-168 de sun, et tournant sur la majorité des serveurs d'applications existants.
Liferay en est à sa 8e année de développement, et utilise les dernières technologies J2EE de pointe telles que Spring, Struts, JSF, Hibernate, Ajax, Velocity, WSRP et bien d'autres.

Avant de présenter le produit, voyons ce qu'est un portail:

Un portail est une application web dont le rôle est d'aggréger sur une ou plusieurs pages des ressources et services différents (centrés sur un domaine particulier), tout en fournissant un système de sécurité permettant de gérer les permissions de ses différents utilisateurs et groupes d'utilisateurs. Les ressources ou services qui sont fournis par le portail sont matérialisés par ce que l'on appelle des 'Portlets': ce ne sont en fait simplement que des applications web J2EE ayant la seule particularité d'être conformes à la specification JSR-168.

Un utilisateur connecté au portail peut disposer d'un espace privé (qu'il retrouve a chaque connexion) sur lequel il peut organiser ses applications favorites (des Portlets donc) sur une ou plusieurs pages.

L'administrateur peut, grâce au système de sécurité, restreindre l'accès à certains portlets (ou fonctionnalités d'un portlet) à certains utilisateurs ou groupes d'utilisateurs du portail par exemple.

A titre d'exemple, Google offre un portail personnalisable a chaque utilisateur accessible en cliquant sur le lien 'Personnaliser cette page' sur le site du moteur de recherche. On arrive alors sur une page nous donnant la possiblité d'ajouter ou de supprimer des informations (présentées sous forme de Portlet) mais aussi des les réorganiser sur la page.

Parlons de Liferay maintenant !

Liferay est donc un projet OpenSource, développé par une communauté assez active (une mise a jour majeure tous les 3 mois environ), et disponible sur le site http://www.liferay.com.
Le portail est disponible sous 2 formes:
- une version Professional étant une application web POJO (Plain Old Java Object) exécutable directement sur une instance de conteneur web J2EE (Tomcat par exemple) et ne comportant donc aucun EJB
- une version Enterprise étant une application web exécutable directement sur une instance de conteneur d'EJB (JBoss par exemple)

La version Professional est un bon point de départ pour tester: elle est disponible en téléchargement, sous forme d'application complète avec le serveur intégré et configuré (ici pour Tomcat), ou sous forme de fichier WAR ou EAR. Les sources du portail sont bien entendu aussi disponibles sur la page de téléchargement.

Liferay est compatible avec tous les SGBD existants (grâce a l'utilisation du framework Hibernate), et s'exécute par défaut avec le SGBD embarqué HSQLDB.

Une fois le serveur lancé, on arrive sur la page d'accueil:

Toutes les pages disponibles pour le moment appartiennent à la communauté des 'Invités' vu qu'aucune connexion n'est nécessaire pour les visualiser. Pour se connecter, cliquer sur le lien 'Sign In' situé en haut a droite de la page. Entrer le login et mot de passe d l'administrateur par défaut:
  • login: test@liferay.com
  • password: test

Une fois connecté, nous sommes redirigés vers la communauté privée de l'administrateur contenant déjà plusieurs portlets. Dans cet ensemble de pages on peut, en cliquant sur la barre de titre des différents portlets, déplacer les portlets, les supprimer, en ajouter d'autres, etc.
En plaçant le pointeur de la souris sur l'icone présent dans le coin supérieur droit, on obtient la liste des actions disponibles sur la page courante.

En cliquant par exemple sur l'icone représentant un '+', un menu apparait et permet d'ajouter sur la page courante les portlets disponibles sur le portail. On peut aussi gérer son compte ou changer la disposition des portlets sur la page (Layout), etc.
Si l'on veut revenir a la communauté des invités, il suffit de sélectionner 'Guest' dans le menu apparaissant lorsque l'on place le pointeur de la souris sur l'icone représentant un panneau de direction. D'autres communautés existent et peuvent être créées par le biais du portlet 'Communities'.

Liferay est livré avec beaucoup de portlets plus ou moins utiles. Les plus intéressants sont:

  • Journal
    permet d'écrire des articles et de les publier grâce au portlet Journal Content, mais aussi de générer un flux RSS par exemple.
  • Message Boards
    un forum avec abonnement et génération de flux RSS également
  • Wiki, Blogs
  • Polls
    pour faire des sondages
  • IFrame
    pour afficher un site ou une page externes dans un portlet (par exemple essayez avec google.fr !)
  • Calendar
    un calendrier avec gestion des évenements (par mail, RSS, etc)
  • ... et bien sur tous les portlets d'administration du portail !
Et l'on peut bien entendu rajouter ses propres portlets grâce au système d'autodeploy qui permet de les rajouter à chaud (c'est à dire sans redémarrer le serveur !).

Pour terminer, je parlerai de quelques fonctionnalités de Liferay très intéressantes lorsque l'on veut l'utiliser en entreprise:

  • Liferay dispose d'un mécanisme permettant d'une part d'intéragir avec le LDAP de l'entreprise lors de l'étape de login, mais aussi de synchroniser les groupes du LDAP dans le portail !
  • Liferay fournit les connecteurs pour intéragir avec un système de SSO (Single Sign On) tel que CAS. Typiquement, le SSO est utile si l'on dispose de 2 applications web différentes ayant chacune leur système d'authentification propre et que l'on veut faire en sorte que le fait de s'authentifier sur l'une nous authentifie automatiquement sur l'autre (donc on ne se Logge qu'une seule fois).
Voila j'espère que cette petite introduction vous aura convaincu de la puissance d'un portail web et spécifiquement de Liferay, de la valeur ajoutée et du gain de temps que cela peut apporter à une entreprise qui doit se créer un intranet.

Partager ce billet