Tutoriel jBPM Workflow — Start Event + Human Task

 Après avoir créé un processus simple, l’étape suivante consiste à ajouter une interaction utilisateur.

Dans jBPM, cela se fait grâce à la Human Task.

Ce tutoriel explique comment démarrer un processus et assigner une tâche à un utilisateur.


Cette architecture est couramment utilisée dans les environnements microservices modernes.

👉 environnements microservices modernes


📌 Objectif

Créer un workflow :

Start → Human Task → End

Un utilisateur devra compléter la tâche pour que le processus continue.


🧠 Qu’est-ce qu’une Human Task ?

Une Human Task est une tâche exécutée par une personne (et non par le système).

Exemples :

  • Approuver une demande

  • Valider un document

  • Remplir un formulaire


🖼️ Diagramme


🛠 Étape 1 — Créer le processus

Dans jBPM Modeler :

  1. Ajouter Start Event

  2. Ajouter User Task

  3. Ajouter End Event

Nommer la tâche : Approve Request


🛠 Étape 2 — Configurer l’assignation

Dans les propriétés de la tâche :

  • ActorId = john
    ou

  • GroupId = managers


Exemple

ActorId: john

🛠 Étape 3 — Démarrer le processus

KieSession ksession = kcontainer.newKieSession(); ProcessInstance process = ksession.startProcess("approval-process");

🛠 Étape 4 — Compléter la tâche

TaskService taskService = runtimeEngine.getTaskService(); List<TaskSummary> tasks = taskService.getTasksAssignedAsPotentialOwner("john", "en-UK"); taskService.start(taskId, "john"); taskService.complete(taskId, "john", null);

🖼️ Exécution


🧠 Ce que vous avez appris

  • Interaction utilisateur dans workflow

  • Assignation de tâche

  • Démarrage processus

  • Complétion tâche


⚠️ Erreurs fréquentes

❌ Mauvais ActorId
❌ Oublier start() avant complete()
❌ Aucun utilisateur configuré


🔐 Bonnes pratiques

✔ Utiliser groupes plutôt qu’utilisateurs
✔ Ajouter date limite
✔ Ajouter commentaires


🎯 Conclusion

Les Human Tasks permettent d’intégrer l’humain dans l’automatisation.

C’est l’élément central des workflows métier.

💼 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, CMS, 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

Popular posts from this blog

OOPs Concepts in Java | English | Object Oriented Programming Explained

Scopes of Signal in jBPM

jBPM Installation Guide: Step by Step Setup