Activiti Migration
Migrating an existing application from Activiti <= 5.11 or Camunda 7.x to Fluxnova 1.0 is straightforward. This page describes the necessary steps. Once done with the migration, the minor version update guides show how to update from 1.0 to the latest Fluxnova version.
The changes in short are:
- Maven Dependencies, e.g.,
activiti.jar
changed tofluxnova-engine.jar
. - Package Names changed from
org.activiti
toorg.finos.fluxnova.bpm
for all modules (including engine, CDI and spring). - The configuration file changed from
activiti.cfg.xml
tofluxnova.cfg.xml
. - Several (internal) classes are renamed - see the lists below.
There are some things which have not changed yet:
- Database schema and table names. Note that we based our fork on Activiti 5.11 and the tables existent in that version.
- The
activiti:
Custom Extensions are kept. A Fluxnova namespace will be introduced soon but backwards compatibility will be ensured.
We based our fork on Camunda 7.24, which is based on the database schema of Activiti 5.11. So please update your project to this database using the update scripts provided by Activiti. If you are using a newer version, best ask for assistance in the Fluxnova Forum.
Exchange Library
Exchange the existing library (here shown as Maven dependency)
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti</artifactId>
<version>5.11</version>
</dependency>
to
<dependency>
<groupId>org.finos.fluxnova.bpm</groupId>
<artifactId>fluxnova-engine</artifactId>
<version>7.0.0-Final</version>
</dependency>
Make sure that you have the Fluxnova Maven Repository set correctly:
<repository>
<id>fluxnova-bpm-nexus</id>
<name>fluxnova Maven Repository</name>
<url>https://artifacts.camunda.com/artifactory/public/</url>
</repository>
Adjust Package Names
Just do an Organize Imports in your IDE, that should do the trick as the API class names have not changed.
Your IDE should figure out the rest for you.
For Eclipse this can be done by clicking on the project and hitting Ctrl-Shift-O
.
Which Activiti Class Names Have Changed?
component | Activiti class name | Fluxnova class name |
---|---|---|
engine | ActivitiException | ProcessEngineException |
ActivitiClassLoadingException | ClassLoadingException | |
ActivitiOptimisticLockingException | OptimisticLockingException | |
ActivitiTaskAlreadyClaimedException | TaskAlreadyClaimedException | |
ActivitiWrongDbException | WrongDbException | |
ActivitRule | ProcessEngineRule | |
ActivitiTestCase | ProcessEngineTestCase | |
PluggableActivitiTestCase | PluggableProcessEngineTestCase | |
AbstractActivitiTestCase | AbstractProcessEngineTestCase | |
ResourceActivitiTestCase | ResourceProcessEngineTestCase | |
spring | ActivitiComponent | ProcessEngineComponent |
SpringActivitiTestCase | SpringProcessEngineTestCase | |
cdi | ActivitiCdiException | ProcessEngineCdiException |
ActivitiExtension | ProcessEngineExtension | |
CdiActivitiTestCase | CdiProcessEngineTestCase |
That’s it - now your application should run again.