DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Related

  • Stop Writing Dialect-Specific SQL: A Unified Query Builder for Node.js
  • Custom Model Context Protocol (MCP) for NL2SQL: A Rigorous Evaluation Framework on Oracle Database
  • Implementing Idempotency in Distributed Spring Boot Applications Using MySQL
  • Build a Dynamic Web Form Using Camunda BPMN and DMN

Trending

  • Multi-Scale Feature Learning in CNN and U-Net Architectures
  • The Agentic Agile Office: Streamlining Enterprise Agile With Autonomous AI Agents
  • Offline-First Patch Management for 10,000 Edge Nodes: A Practical Architecture That Scales
  • A Scalable Framework for Enterprise Salesforce Optimization: Turning Outcomes Into an Operating System
  1. DZone
  2. Data Engineering
  3. Databases
  4. Integrate Camunda BPMN With MySQL

Integrate Camunda BPMN With MySQL

In this quick post, we take a look at all the XML code and terminal commands you need to integrate these two interesting technologies.

By 
Praveen Buya user avatar
Praveen Buya
·
Feb. 13, 18 · Tutorial
Likes (8)
Comment
Save
Tweet
Share
14.2K Views

Join the DZone community and get the full member experience.

Join For Free

Steps to Install and Setup Camunda on a Wildfly Server:

We'll be using Camunda version:7.8 and Wildfly server:10.1.0 in this tutorial.

  • Install Java and set environment variables.

  • Connect to your VM using putty and run the below commands.

#JDK installation ----------------------              

sudo apt-get install -y openjdk-8-jdk

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/

export PATH=$PATH:/usr/lib/jvm/java-8-openjdk-amd64/bin
  • Download camunda-bpm-wildfly10-7.8.0.zip/camunda-bpm-wildfly10-7.8.0.tar file.
  • Navigate to /opt/camunda/server/wildfly-10.1.0.Final/standalone/deployments and add the war file.
  • Run start-camunda.sh in/opt/camunda directory.
  • To run Camunda as a background process: ./start-camunda.sh 
  • By default, Camunda will use in-memory H2 DB for storing the process details.
  • Steps to Connect to MySQL DB:

    • Run the scripts present in below directory by selecting the files related to MySQL.
    • Once the tables are created, navigate to the /opt/camunda/server/wildfly-10.1.0.Final/standalone/configuration/standalone.xml file.
    • Add the Ccamunda subsystem as an extension:
    <server xmlns="urn:jboss:domain:1.1">
    
      <extensions>
    
        ...
    
              <extension module="org.camunda.bpm.wildfly.camunda-wildfly-subsystem"/>
    • Create a data source to connect to MySQL under the data sources section
    <datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true">
        <connection-url>jdbc:mysql://*hostname*/*dbname*</connection-url>
        <driver>mysql</driver>
        <security>
            <user-name>*username*</user-name>
            <password>*password*</password>
        </security>
    </datasource>
    <datasource jta="true" jndi-name="java:jboss/datasources/ProcessEngine" pool-name="ProcessEngine" enabled="true" use-java-context="true" use-ccm="true">
        <connection-url> jdbc:mysql://*hostname*/*dbname*</connection-url>
        <driver>mysql</driver>
        <security>
            <user-name>*username*</user-name>
          <password>*password*</password>
        </security>
        <validation>
            <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLValidConnectionChecker" />
            <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLExceptionSorter" />
        </validation>
    </datasource>
    • Under drivers add a MySQL driver.
    <driver name="mysql" module="com.sql.mysql">
        <driver-class>com.mysql.jdbc.Driver</driver-class>
    </driver>
  • Navigate to /opt/camunda/server/wildfly-10.1.0.Final/modules/com/mysql/driver/main and add mysql-connector-java-5.1.45-bin.jar and module.xml
  • In module.xml, add the below content.
  • <?xml version="1.0" encoding="UTF-8"?>
    
    <module xmlns="urn:jboss:module:1.1" name="com.sql.mysql">
        <resources>
            <resource-root path="mysql-connector-java-5.1.45-bin.jar" />
        </resources>
        <dependencies>
            <module name="javax.api" />
            <module name="javax.transaction.api" />
        </dependencies>
    </module>
    • Change the subsystem IP to point to the VM's internal IP.

    <wsdl-host>${jboss.bind.address:*IP*}</wsdl-host>
    • And also change the management interface's IP to point to the internal IP.   

    <interfaces>   
      <interface name="management">        
        <inet-address value="${jboss.bind.address.management:*IP*}" />    
      </interface>    
      <interface name="public">     
        <inet-address value="${jboss.bind.address:*IP*}" />   
      </interface>
    </interfaces>
    MySQL Camunda

    Opinions expressed by DZone contributors are their own.

    Related

    • Stop Writing Dialect-Specific SQL: A Unified Query Builder for Node.js
    • Custom Model Context Protocol (MCP) for NL2SQL: A Rigorous Evaluation Framework on Oracle Database
    • Implementing Idempotency in Distributed Spring Boot Applications Using MySQL
    • Build a Dynamic Web Form Using Camunda BPMN and DMN

    Partner Resources

    ×

    Comments

    The likes didn't load as expected. Please refresh the page and try again.

    • RSS
    • X
    • Facebook

    ABOUT US

    • About DZone
    • Support and feedback
    • Community research

    ADVERTISE

    • Advertise with DZone

    CONTRIBUTE ON DZONE

    • Article Submission Guidelines
    • Become a Contributor
    • Core Program
    • Visit the Writers' Zone

    LEGAL

    • Terms of Service
    • Privacy Policy

    CONTACT US

    • 3343 Perimeter Hill Drive
    • Suite 215
    • Nashville, TN 37211
    • [email protected]

    Let's be friends:

    • RSS
    • X
    • Facebook