Process Engine
The process engine deploys process definitions, runs process instances and stores their state in the database. Jmix BPM uses the Flowable process engine. The engine moves a process instance forward in database transactions, each ending at the next wait state or asynchronous continuation, see Transactions. The engine runs jobs, such as asynchronous continuations and timers, with the job executor and records the history of process instances. For errors that a process throws and catches, see Error Handling. To work with the engine from your code, use the Flowable API.
Process Engine Configuration
Jmix BPM includes the Flowable Spring Boot starter, which creates the process engine.
You can change engine settings with the flowable.* application properties.
For a setting that has no application property, create a Spring bean that implements EngineConfigurationConfigurer<SpringProcessEngineConfiguration>.
See Customizing Engine Configuration in the Flowable documentation.
Jmix BPM configures the process engine with its own configurer, BpmSpringProcessEngineConfigurationConfigurer. Jmix BPM sets the typed event listeners, the custom default and post BPMN parse handlers, the activity behavior factory, the task service and the start process instance interceptor. If your custom configurer replaces any of them, Jmix BPM features can stop working, often without an error.
|