Tutoriel jBPM en Français : Gateway à Base d’Événement (Event-Based)
🚀 Introduction
La ⏳ Gateway à Base d’Événement dans jBPM est utilisée lorsque le processus doit attendre des événements externes avant de continuer.
Contrairement aux Gateways 🟥 Exclusive ou 🟢 Inclusive, qui se basent sur des conditions de données, la Gateway à Base d’Événement écoute des événements tels que :
Événements de Message
⏰ Événements Timer
🔔 Événements Signal
Puis elle suit le chemin de l’événement qui se produit en premier.
🛠️ Prérequis
jBPM / Business Central & KIE Server installés
☕ JDK 11+ (ou JDK 17)
Accès :
http://localhost:8080/business-centralCompréhension de base des événements en BPMN2 (Message, Timer, Signal)
📝 Étape 1 : Créer un nouveau processus
Connectez-vous à Business Central
Créez un projet : event-gateway-demo
➕ Ajouter un Business Process : EventGatewayProcess
Id :
com.example.eventgatewayPackage :
com.example
🎨 Étape 2 : Concevoir le workflow
Ajouter un nœud Start (Début)
⏳ Ajouter une Gateway à Base d’Événement
Ajouter un Événement Intermédiaire de Type Message Catch (attente de la réponse du client)
⏰ Ajouter un Événement Intermédiaire de Type Timer (délai après X minutes/jours)
Connecter chaque événement à son propre nœud End (Fin)
Flux attendu :
Début → ⏳ Gateway Event-Based → (Message Event → ✅ Fin, Timer Event → ❌ Fin)
📊 Étape 3 : Définir le comportement
⏳ Le processus se met en pause au niveau de la gateway et attend
Si un message arrive (par exemple « Réponse du client ») → le processus suit le chemin du message
Si le timer expire en premier → le processus prend le chemin du timer
⛔ Seul un chemin événementiel est pris — celui correspondant à l’événement qui survient en premier
⚙️ Étape 4 : Configurer les événements
Message Event :
Nom :
customerReplyRéférence de message :
CustomerResponse
Timer Event :
Durée :
PT5M(5 minutes) ouP1D(1 jour)
🔨 Étape 5 : Construire et déployer
Sauvegarder le processus
Build & Install
Déployer sur le KIE Server
▶️ Étape 6 : Lancer le processus
Aller dans Manage → Process Definitions
▶️ Démarrer une nouvelle instance de EventGatewayProcess
Le processus attend à la gateway :
Si la réponse du client arrive → le processus termine avec succès
Si le timer expire d’abord → le processus suit le chemin de timeout
📌 Étape 7 : Exemples d’utilisation
Attendre la confirmation d’un utilisateur (message) OU ⏰ annuler automatiquement après le délai
Réponse à un email attendue OU solution de secours si ⏰ pas de réponse dans X jours
Paiement d’un client (message) OU ⏰ annuler la commande s’il n’est pas reçu à temps
🛠️ Dépannage
❌ Processus bloqué ? → Vérifier que les définitions d’événements sont correctement configurées
⚠️ Les deux chemins se déclenchent ? → Seulement un devrait se déclencher ; vérifier que vous utilisez des événements intermédiaires, pas des tâches normales
Timer ne fonctionne pas ? → Utiliser le format ISO 8601 correct (par exemple
PT30S,PT5M,P1D)
🎯 Conclusion
La ⏳ Gateway à Base d’Événement est essentielle pour les workflows qui dépendent de déclencheurs externes plutôt que de conditions internes.
Elle rend vos processus réactifs et sensibles au temps :
Attendre des messages utilisateur / client / système
Gérer automatiquement les délais
Réagir aux signaux métiers
En utilisant les Gateways Event-Based, vous pouvez concevoir des workflows dynamiques qui s’adaptent aux incertitudes du monde réel, comme attendre des réponses, respecter des échéances ou réagir à des signaux.
💼 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