Page History
The page is under construction.
Goal
The goal of this story is to re-implement the 4-eye review process from Magnolia 4.5 using the jBPM process engine.
...
Commands API will be used to lunch launch new processes, as well as to provide human interaction with the running processes (approval/reject/...). This allows to untie the launching and especially the approval process from the M5 UI and allow external systems to enter the process.
...
Besides the UI configuration, the Base module contains the workflow definitions. These are stored at $MODULE_PATH/config/workflows
/definitions, e.g. activation and deactivation workflow definitions.
...
Activation
TODO
Deactivation
TODO
Implementation Notes
The following is a scratchpad for ideas and notes from the implementation process - these should be processed in the next (Alpha4) sprint.
- What about using taskClient.start(taskID) when MessageDetail for the Task is open, to block others from performing actions on it? Of course, others will be still able to open MessageDetails on a task, but they should not be allowed to click the "Approve"/"Reject"/... buttons (and perhaps might see an information which user has claimed the task).
- DONE: Use TaskEventListener in the TaskService to handle incoming (and outcoming) Human Tasks, rather than to rely on the process designers to make things properly.
- allow customers to register their own TaskEventListeners, to be able to cooperate with the existing customer BPMS;
IMPORTANT (for Documentation): If the jBPM module fails to start with a "User transactions are not supported by the current configuration, the jBPM engine cannot be started." message, and the servlet container is Tomcat (and probably also Jetty), the
context.xml
file with the following content has to be added to theMETA-INF
folder of the Magnolia webapp:Code Block theme Eclipse language html/xml title context.xml <Context> <Transaction factory="bitronix.tm.BitronixUserTransactionObjectFactory" /> </Context>
- ...