Activiti Migration

Migrating an existing application from Activiti <= 5.11 (or Camunda fox 6.x - see below) to Camunda Platform 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 Platform 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/service/rest/repository/browse/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.

目录: