Changes in Camunda Platform

Hello,

My name is Yazan, I’m a master student in Haifa university in Israel,

I’m using Camunda platform in my thesis and I have a question and problem.

1- How can I insert the values or the variables that user insert in tasklist into external database like MySQL?

2- Does Camunda flexibility to changes? which mean, I’m trying to change the source code of Camunda to my specific requirements (develop an automation mechanism that display exceptions and message according to user values.

To do that has logged in into H2 database http://localhost:8080/h2/h2 and integrated to Camunda Engine. Now, I want to integrate H2 database with MySQL Workbench in order to duplicate or insert the value that user inter to MySQL database. In the end I want to takeoff the values from MySQL and display them into Camunda- Tasklist according to user insertion.

Can anyone explain how to do that, or, is it possible to do that (connect to source code and doing changes accordingly)?

I’m trying to change the platform so that it works automatically in terms of processes.
I have a process of borrowing books from a library, the process runs two entities in two processes simultaneously, my tendency to handle the borrowing process automatically through values ​​that are retrieved from a database, these values ​​the administrator enters them on a one-time basis.
On the explanation screen above, I want to connect the Camunda Tasklist & Cockpit to retrieve the entries directly from the MySql database instead of the H2 that H2 contact add, update or delete fields and tables due to using the Postgare encoder protocols.
I want to link the Camunda Tasklist & Cockpit to MySql so that the Camunda system will speak directly to the MySql database instead of H2.
I searched and did not find ways to hours such a thing, does anyone have an idea of ​​how to do such a thing? Or, is it something that can be done?

Hi @YazanAsaad,

the Camunda Platform didn’t provide these features out of the box. It focuses on the process logic and what you miss is the business logic.

I would write a (micro-)service to handle the borrowing logic and the MySQL database access.

Then you can use your service in the embedded forms and call its rest apis in the java script part.

Or provide a business fronted and call the task api to show and complete user tasks.

Hope this helps, Ingo

Hi, @Ingo_Richtsmeier
But what about MySQL configuration which is in Camunda docs, MySQL Database Configuration- Camunda Platfrom.
Why MySQL Database Configuration exit in HAL Managment Console or user can do by XML code, on the other side, camunda does not support usege or duplicate values to external MySQL Workbeanch?

Hi @YazanAsaad,

the engine uses internally a single datasource that you can configure against different database servers (but just a single one). The engine stores all internal data like process instances, variables, history, … in the predefined tables.

If you want additional tables (where ever they live) to store data from your processes, you have to write code for this.

Hope this helps, Ingo

Hi @Ingo_Richtsmeier
Thank you very much!
But, why there is a configuration process to mysql engine and user can’t use it to insert valuse? and for what this method is existing in case of camunda does not store in MySQL?

Hi @YazanAsaad,

sorry if I misunderstood your questions. If it is simply about exchanging the H2 database with MySql database, it depends on your runtime system.

For an embedded engining running in spring-boot, you simple add the dependency to mysql driver and spring-boot-jdbc and you are done.

For a shared engine running on an application server, have a look here: Install the Full Distribution on a Tomcat Application Server manually | docs.camunda.org.

Hope this helps, Ingo

Hello @Ingo_Richtsmeier
my question for possibility to extend Camunda platform and doing a customization one according to specific requirements. I want to do an automation platform with integration of MySQL as a database instead of or a duplication of H2 database. The deference here that I want to create another table which is different from predefined table of H2 and to define MySQL as a basic database instead of H2.

It is possible to do in Camunda platform?

In addition, Camunda support integration of MySQL configuration, is this configuration support/ aid to achieve the above goal?

What is the goal of supporting configuration MySQL?

Hi @YazanAsaad,

Camunda didn’t support SQL extensions out of the box. But you can use any JDBC related code inside your automated processes. (as I said before)

Camunda didn’t want the users to choose a predefined database for their process automation projects. The engine is tested against different popular SQL databases and the users/customers can keep using the database where they have all operational knowledge.

Hope this helps, Ingo