I'm trying to figure out the best way to get a callback method when a process stops executing due to an unexpected exception or a BpmnError being thrown that's not caught. In other words there is no boundary events catching anything, and the error just propagates up, forcing the process to end. The end event is never reached in this case. I want to be able to run code if this happens.
I don't think the global execution listener would work for this case.
Any ideas or best practices here?
Thanks,
Galen
There might be cases where a workflow is running in production, and the developer of the flow might not have thought of all possible failure cases. In other words, they may not have put in place appropriate boundary conditions and or alternate flows where necessary.
At runtime, if the flow (unexpectedly) bubbles out, and does not complete, I may want to email an admin user of this occurrence. If a process fails, it will not show up in the Cockpit anymore to diagnose the problem, as it's not alive.
Does this make sense? Perhaps there is a more built-in way to do something like this that I'm not thinking of. If not, do you have any examples of implementing a CommandInterceptor?
Thanks,
Galen
If a process fails, it will not show up in the Cockpit anymore to diagnose the problem, as it's not alive.Does this make sense? Perhaps there is a more built-in way to do something like this that I'm not thinking of.
Thanks for the hint of setting my StartEvent to async. However, setting my StartEvent to asyc broke the form variables. See:
https://groups.google.com/forum/#!topic/camunda-bpm-users/k1G1gZhwY0w
I'll look into the Custom incident hander.
Thanks!
Galen