Tutoriel jBPM en Français : Gateway Inclusive (OR)
🚀 Introduction
La Gateway Inclusive (OR) dans jBPM permet à un processus de suivre un ou plusieurs chemins simultanément, en fonction de conditions.
Contrairement à la Gateway Exclusive (XOR), qui ne choisit qu’un seul chemin, la Inclusive peut déclencher plusieurs flux sortants lorsque leurs conditions s’avèrent vraies.
Cela s’avère utile pour des scénarios tels que des revues multi-étapes, des notifications conditionnelles, ou des actions parallèles mais optionnelles.
🛠️ Prérequis
jBPM / Business Central & KIE Server installés
☕ JDK 11+ (ou JDK 17)
Utilisateurs avec rôles
analyst/managerAccès à :
http://localhost:8080/business-central
📝 Étape 1 : Créer un nouveau processus
Connectez-vous à Business Central
Créez un projet : inclusive-gateway-demo
➕ Ajoutez un Business Process nommé InclusiveProcess
Id :
com.example.inclusivePackage :
com.example
🎨 Étape 2 : Concevoir le workflow
Ajouter un nœud Start (Début)
Ajouter une Gateway Inclusive (OR)
Ajouter une tâche Email (Envoyer Notification)
Ajouter une tâche Humaine (Revue par le Manager)
Ajouter une tâche Report (Générer Rapport)
Ajouter une autre Gateway Inclusive (Join)
✅ Ajouter un nœud End (Fin)
Connectez comme suit :
Début → Inclusive (Split) → (Email, Revue, Rapport) → Inclusive (Join) → Fin
📊 Étape 3 : Définir les données
Ajouter des variables de processus :
sendEmail:BooleanreviewNeeded:BooleangenerateReport:Boolean
⚙️ Étape 4 : Configurer les conditions de la Gateway
Chemin Email → condition :
Chemin Review → condition :
Chemin Report → condition :
Plusieurs conditions peuvent être vraies en même temps, donc plus d’un chemin peut s’exécuter en parallèle.
🔨 Étape 5 : Construire et déployer
Sauvegarder le processus
Build & Install le projet
Déployer sur le KIE Server
▶️ Étape 6 : Lancer le processus
Aller dans Manage → Process Definitions
▶️ Démarrer une instance du InclusiveProcess
Définir les variables (
sendEmail,reviewNeeded,generateReport) comme vrai/fauxLe processus suit tous les chemins pour lesquels la condition est vraie
📌 Étape 7 : Résultats possibles
Si seul
sendEmail=true→ seule la tâche Email s'exécuteSi
reviewNeeded=trueetgenerateReport=true→ Review + Report s’exécutent ensembleSi toutes les variables sont vraies → les trois tâches s’exécutent avant la jointure à la Gateway Inclusive
🛠️ Dépannage
❌ Aucun chemin déclenché ? → Assurez-vous qu’au moins une condition est vraie
⚠️ Risque d’impasse ? → Toujours inclure une Gateway Join correspondante avant le nœud de fin
Comportement inattendu ? → Vérifiez les types de données (Boolean vs String)
👉 Source code: https://github.com/LearnITWithShikha/GatewayExamples
🎯 Conclusion
La Gateway Inclusive (OR) est un moyen puissant de modéliser des workflows où plus d’une condition peut être vraie simultanément.
Elle offre une flexibilité au-delà de la XOR Exclusive en permettant l’exécution multi-branche.
Tu peux maintenant :
Envoyer des notifications optionnelles
Demander des revues uniquement si nécessaire
Générer des rapports selon les conditions
En maîtrisant les Gateways Inclusives, tu pourras concevoir des processus flexibles et réalistes où les règles métier déclenchent plusieurs actions en parallèle.
💼 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).
📧 Contact: ishikhanirankari@gmail.com | info@realtechnologiesindia.com
Comments
Post a Comment