Créer votre premier Portlet Liferay
Guide pas à pas pour débutants (Liferay 7.x)
Introduction
Si vous débutez avec Liferay DXP, le tout premier vrai jalon en développement est:
❓ Comment créer mon premier Portlet Liferay?
Un Portlet est la brique UI fondamentale de Liferay.
Tout ce que vous voyez sur une page du portail Liferay est rendu par un ou plusieurs portlets.
Dans ce blog, vous allez apprendre :
-
Ce qu’est réellement un portlet
-
Les outils nécessaires
-
Comment créer un portlet « Hello World »
-
Comment fonctionne le cycle de vie d’un portlet
-
Comment le déployer et le tester
-
Les erreurs courantes des débutants
Qu’est-ce qu’un Portlet Liferay ?
Un Portlet est un composant UI Java modulaire qui :
-
S’exécute dans le portail Liferay
-
Rend une partie d’une page
-
Gère les actions utilisateur
-
Appelle des services et des APIs
-
Est déployé comme un module OSGi
Exemples :
-
Tableau de bord d’approbation
-
Boîte de réception de tâches
-
Formulaire de saisie
-
Vue de reporting
-
UI de workflow
👉 Pensez à un portlet comme à une mini application web à l’intérieur du portail.
Prérequis
Avant de commencer :
✔ Java 11 ou 17
✔ Liferay 7.3 ou 7.4
✔ Liferay Workspace (recommandé)
✔ Gradle (inclus avec le workspace)
✔ IDE : IntelliJ / Eclipse
Étape 1 – Créer un Liferay Workspace
Le Liferay Workspace est la structure de projet recommandée.
Cela crée :
Étape 2 – Générer un nouveau module Portlet
Utilisez Blade CLI :
Cela crée :
Étape 3 – Comprendre la classe Portlet
Ouvrez la classe Java générée :
Ce que cela signifie
-
@Component→ Enregistre la classe comme portlet OSGi -
MVCPortlet→ Framework MVC par défaut de Liferay -
view.jsp→ Template UI -
display-category→ Catégorie d’affichage dans l’UI
Étape 4 – Créer l’UI (view.jsp)
Modifiez :
Étape 5 – Construire et déployer le Portlet
Depuis la racine du workspace :
Si Liferay tourne, vous devriez voir :
Étape 6 – Ajouter le Portlet à une page
-
Connectez-vous à Liferay
-
Allez sur une page
-
Cliquez sur Ajouter → Widgets
-
Trouvez Hello Portlet
-
Glissez-le sur la page
🎉 Vous venez de créer votre premier Portlet Liferay.
Comprendre le cycle de vie d’un Portlet
Un portlet passe par :
Dans Liferay MVC :
-
doView()→ Rendu UI -
processAction()→ Traitement des formulaires -
serveResource()→ Appels AJAX
Étape 7 – Ajouter une action
Mettez à jour votre classe Portlet :
Mettez à jour view.jsp :
Comment les Portlets s’intègrent avec BPM & APIs
En production, les portlets :
-
Appellent des APIs Spring Boot
-
Démarrent des processus BPM (Camunda / jBPM)
-
Affichent des tâches de workflow
-
Présentent des tableaux de bord métier
Exemple :
Erreurs courantes des débutants 🚨
❌ Mettre de la logique métier lourde dans le portlet
❌ Couplage fort avec la base de données
❌ Ignorer les dépendances OSGi
❌ URLs codées en dur
❌ Aucune gestion d’erreur
❌ Pas de logs
Bonnes pratiques (éprouvées en production)
✔ Garder les portlets légers (UI uniquement)
✔ Mettre la logique métier dans Spring Boot
✔ Utiliser les APIs REST
✔ Externaliser la configuration
✔ Utiliser les APIs headless
✔ Ajouter logs & monitoring
Question d’entretien (très fréquente)
Q : Qu’est-ce qu’un Portlet Liferay ?
R : Un composant UI Java modulaire déployé comme un bundle OSGi dans le portail Liferay.
Conclusion
❗ Un Portlet Liferay n’est pas juste un JSP.
❗ C’est un module OSGi complet avec un cycle de vie, des services et une UI.
Une fois que vous savez créer un portlet basique, vous pouvez :
-
Construire des tableaux de bord de workflow
-
Créer des portails d’approbation
-
Intégrer des moteurs BPM
-
Développer des interfaces entreprise
💼 Support professionnel disponible
Si vous rencontrez des problèmes sur des projets réels liés au développement backend d’entreprise ou à l’automatisation des workflows, je propose des services de conseil payants, de débogage en production, de support projet et de formations ciblées.
Les technologies couvertes incluent Java, Spring Boot, PL/SQL, Azure, ainsi que l’automatisation des workflows (jBPM, Camunda BPM, RHPAM), DMN/Drools.
📧 Contact: ishikhanirankari@gmail.com | info@realtechnologiesindia.com
🌐 Website: IT Trainings | Digital lectern | Digital rostrum | Digital metal podium
Si vous rencontrez des problèmes sur des projets réels liés au développement backend d’entreprise ou à l’automatisation des workflows, je propose des services de conseil payants, de débogage en production, de support projet et de formations ciblées.
Les technologies couvertes incluent Java, Spring Boot, PL/SQL, Azure, ainsi que l’automatisation des workflows (jBPM, Camunda BPM, RHPAM), DMN/Drools.
📧 Contact: ishikhanirankari@gmail.com | info@realtechnologiesindia.com
🌐 Website: IT Trainings | Digital lectern | Digital rostrum | Digital metal podium
Comments
Post a Comment