Migrating an existing application from Activiti <= 5.11 (or Camunda fox 6.x - see below) to Camunda BPM 7.0 is straightforward.This page describes the necessary steps.Once done with the migration, the minor version update guides show how to update from 7.0 to the latest Camunda version.
Getting Help
If you are on a more recent Activiti version or if you have any trouble migrating, ask for assistance in the Forum or turn to our Consulting services. We are happy to help you!
The changes in short are:
- Maven Dependencies, e.g., activiti.jar changed to camunda-engine.jar.
- Package Names changed from org.activiti to org.camunda.bpm for all modules (including engine, CDI and spring).
- The configuration file changed from activiti.cfg.xml to camunda.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 Camunda BPM namespace will be introduced soon but backwards compatibility will be ensured.
We based our fork 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 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.camunda.bpm</groupId>
<artifactId>camunda-engine</artifactId>
<version>7.0.0-Final</version>
</dependency>
Make sure that you have the Camunda Maven Repository set correctly:
<repository>
<id>camunda-bpm-nexus</id>
<name>camunda Maven Repository</name>
<url>https://app.camunda.com/nexus/content/groups/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 | Camunda 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.