• Latest Version 2.2.1
  • Updated 1 month ago
  • Supported in Jmix v0.9-2.2
  • License Commercial
  • Resources
  • Tags


The BPM add-on integrates the open-source Flowable BPM engine into Jmix, giving new Jmix Studio and administrative tools to design, manage and automate various complex interactions between people and systems.

Developers can use the process editor in IntelliJ IDEA Community Edition to import existing BPMN models from external tools or build them from scratch, enriching them with Groovy scripts and Spring beans in a single, integrated environment. No more switching between different tools - get everything connected.

This way, analytical models, once only used for discussions with business stakeholders, can now be turned into executable processes. The special BPMN Entity Data Task component in Jmix lets you load entities into process variables, modify them, and even create new ones all at application runtime.

You can implement the user interface in two ways. First, you can use the process editor to easily configure the auto-generated dialog forms for data viewing and entry. Secondly, if you need a custom interface, Jmix Studio lets you develop detailed screen forms to display any data and offer various application functions, tailored to the user's role and access rights.

As you build Jmix applications, any processes you've developed in Jmix Studio get automatically deployed to the embedded Flowable BPM engine. The tools available with the Addon help in testing and running your corporate web with BPM business logic.

System administrators can use the process editor during runtime to modify deployed processes without needing to restart the application, provided these updates don't change the data model or Java-coded business logic. You will find everything you need for administrative purposes - process versioning, migration, logging and monitoring.

The open-source nature of Jmix, including its BPM add-on, lets you customize and create new components. You can add unique task types to the process model, connect with other systems, or create customized process forms.

This flexibility gives developers more freedom than typical low-code or BPMS platforms, while greatly reducing the routine work involved in integrating a BPM engine into a Spring Boot application by your team.


  • Flowable and Jmix BPM API methods: allow you to manage the embedded Flowable engine programmatically:
  • Start and stop process instances.
  • Collect data about task execution and process progress.
  • Handle events, process properties, etc.
  • BPMN 2.0 visual designer: is based on the bpmn-js toolkit and available in two options:
  • As an extra tool in Jmix Studio for use in IntelliJ IDEA.
  • As a functional part of your web application, distributable without any licensing costs.
  • Entity Data Task: an extended BPMN component that enables manipulating with Jmix entities directly within the process.
  • Integrated DMN 1.1 decision table designer: allows you to implement complex logic and is accessible both in the IDE and at application runtime.
  • User Interface: you can choose between:
  • Automatically generated dialog process forms, customizable for specific tasks using the process designer.
  • Custom Jmix screens with tailored functionality.
  • Task Manager Component: allows users to view assigned tasks, input necessary data, make decisions (such as approving documents), and mark tasks as completed.
  • Administrative screens: used for managing process definitions and instances, and include capabilities to:
  • View all instances of currently running processes.
  • Change assignees of user tasks.
  • View and modify process variables
  • Access analytics on process execution, including operational and historical data.


Alongside the BPM features, incorporating other add-ons can further enhance your application's capabilities:

  • Quartz – allows scheduled tasks execution, configurable at runtime
  • Business calendar – enables accounting for working hours, which is especially useful in business processes
  • Notifications – allows sending notifications to process participants and supervisory personnel
  • Reports – enables building reports based on operational data and process execution statistics