Tutoriel jBPM Workflow : Signaux dans les processus métier
🚀Introduction
Dans jBPM, les Signaux sont utilisés pour communiquer entre différents processus.
Ils permettent à une instance de processus d’émettre un événement auquel d’autres processus (ou des nœuds du même processus) peuvent écouter et réagir.
Les signaux sont utiles pour:
-
Déclencher un processus à partir d’un autre
-
⏸️ Interrompre un flux de processus lorsqu’un événement se produit
-
Synchroniser plusieurs processus en cours d’exécution
Contrairement aux messages (qui sont point à point), les signaux sont diffusés — tous les écouteurs en attente du signal réagiront.
Prérequis
-
jBPM / Business Central & KIE Server installés
-
☕ JDK 11+ (ou JDK 17)
-
Accès à :
http://localhost:8080/business-central
Étape 1: Créer un signal dans Business Central
-
Ouvrez votre projet dans Business Central
-
➕ Ajoutez un nouveau processus ou ouvrez-en un existant
-
Allez dans les propriétés du processus → Définitions globales
-
Ajoutez une définition de Signal (par exemple,
paymentSignal)
Étape 2: Utiliser les événements de signal dans un processus
Voici les trois principales façons d’utiliser les signaux :
-
Événement intermédiaire Catch (intercepte un signal)
-
Le processus attend jusqu’à ce qu’il reçoive le signal spécifié
-
-
Événement intermédiaire Throw (émet un signal)
-
Le processus diffuse un signal vers d’autres
-
-
Événement de signal sur limite (Boundary Signal Event)
-
Interrompt une tâche ou un sous-processus lorsqu’un signal est reçu
-
⚙️ Exemple : Confirmation de paiement
Processus 1: Payment Processor
-
Start → Tâche humaine (“Process Payment”) → Throw Signal (
paymentSignal) → ✅ End
Processus 2: Order Handler
-
Start → Catch Signal (
paymentSignal) → Tâche de service (“Ship Order”) → ✅ End
Lorsque le Processus 1 envoie le signal, le Processus 2 (s’il est en attente) le capte et passe ensuite à l’étape d’expédition.
Étape 3: Construire et déployer
-
Enregistrez les deux processus
-
Construisez & installez
-
Déployez sur le KIE Server
▶️ Étape 4: Exécuter les processus
-
Démarrez le processus Payment Processor
-
Complétez la tâche de paiement → le signal est envoyé
-
Le processus Order Handler (s’il attend) capte le signal → poursuit vers la tâche d’expédition
Cas d’usage des signaux
-
E-commerce : le paiement déclenche l’expédition
-
Notifications : envoyer des alertes à plusieurs processus
-
Manufacturier : l’achèvement d’une machine initie un autre processus
-
⏸️ Interruptions : annuler des tâches ou sous-processus lorsqu’un signal est reçu
🎥 Regardez le tutoriel vidéo complet :
Voici une vidéo rapide pour vous aider à mieux comprendre jBPM Workflow: Signaux en action:
Regarder la vidéo complète sur YouTube
Dépannage
-
❌ Signal non intercepté ? → Vérifiez que le nom du signal est identique dans les événements throw et catch
-
⚠️ Plusieurs écouteurs ne répondent pas ? → Assurez-vous que les processus sont actifs et déployés
-
Le processus ne s’interrompt pas ? → Vérifiez que l’événement de signal sur limite est correctement attaché
Conclusion
Les signaux dans jBPM offrent un moyen puissant de concevoir des workflows pilotés par des événements.
Ils vous permettent de:
-
Connecter plusieurs processus
-
⏸️ Interrompre des processus en cours lorsque nécessaire
-
Synchroniser des événements métier dans des systèmes différents
En maîtrisant les Signaux, vous pouvez concevoir des processus faiblement couplés et réactifs qui s’adaptent dynamiquement en fonction des événements du monde réel.
💼 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
🌐 Website: IT Trainings | Digital lectern | Digital rostrum | Digital metal podium
Comments
Post a Comment