Red Hat
Toggle navigation jBPM logo
  • Home
  • Download
  • Learn
    • Getting started
    • Releases
    • Documentation
    • Performance
    • Videos
    • Slides
  • Business Applications
    • Get Started
    • Beyond basics
  • Get Help
  • Source
  • Services
  • KIE
    • Kogito
    • Drools
    • jBPM
    • OptaPlanner
    • KIE group
  • Follow @jbossjbpm
Fork me on GitHub

Getting started

  • Using Single Zip Distribution
  • Using Docker

Download jBPM

First things first, download jBPM server distribution (if not already done) to start quickly with complete environment.

  • Download jBPM 7.49.0.Final server (single zip) distribution

Just download, unzip and run

jbpm-server/bin/standalone.sh     (Unix / Linux)

jbpm-server/bin/standalone.bat    (Windows)

Explore your running environment

Business Central

Business Central provides feature rich authoring and management environment. It consists of:

  • Design perspectives where users can create projects and pages

  • Deploy perspectives where users can manage execution servers

  • Manage perspectives where users can take control over process and case instances

  • Track perspectives where users can access assigned tasks and reports

Business Central can be accessed (once the server was started) at http://localhost:8080/business-central

There are set of predefined users that can be used to directly logon to Business Central:

  • wbadmin/wbadmin

  • krisv/krisv

  • john/john

  • mary/mary

  • katy/katy

  • jack/jack

  • kieserver/kieserver1!

Additional users can be created via Business Central Admin section.


KIE Server Swagger documentation

KIE Server is the execution server that provides various capabilities

  • BRM (business rules)

  • BPM (business processes)

  • BRP (planning/solver)

  • Case Management

  • DMN (decisions)

Its complete REST api documentation can be accessed at http://localhost:8080/kie-server/docs


jBPM Case Management Showcase

jBPM Case Management Showcase is a web application that aims at illustrating various case management building blocks in action. These are UI components built on top of KIE Server REST api for case management. It’s not intended for production usage but more for getting better understanding of the capabilities. Case management, in general should be business focused so generic UI won’t provide much business context to the knowledge workers.

jBPM Case Management application can be accessed at http://localhost:8080/jbpm-casemgmt

Same users as for Business Central can be used to logon to this application.


Try examples

Once you get yourself familiar with the tools of the jBPM it’s time to see something running. The easiest way is to try one of the examples shipped with the platform, it will show typical path users take to design, build and execute business logic.

Evaluation process

Evaluation process is a business process that is human centric (heavily uses human actors to perform work) that defines a complete flow of activities to perform employee evaluation. This examples shows:

  • importing example project

  • building and deploying project

  • verifying deployment to execution server

  • executing process instance and work with human tasks

  • exploring reporting capabilities


IT Orders case

IT Orders case is more advanced use of the jBPM that relies on dynamic nature of business problems. It allows to take actions based on data so it’s more event/data driven than structured processes. Although it still allows users to take advantage of process fragments to express bit of workflows within the case. This examples shows:

  • importing example project

  • building and deploying project

  • verifying deployment to execution server

  • use of jBPM Case management Showcase application

  • document upload and handing

  • monitoring of case instance in Business Central

More about case management capabilities can be found in following articles

  • Introduction to jBPM Case Management

  • Working with case data

  • Working with dynamic activities


Build your project from scratch

Building new project from scratch can give you an option to have a clean start where you design your process or case to fit your needs. This example shows:

  • creating new project

  • creating new asset - business process

  • build and deploy to execution server

  • execute process instance


Switch to another database

jBPM runs by default with H2 database with file storage - located under <JBOSS_HOME>/standalone/data/jbpm-db

Users can switch to another database very easily by invoking a script located in <JBOSS_HOME>/bin.

To switch to MySQL use following command when server is stopped

<JBOSS_HOME>/bin/jboss-cli.sh --file=jbpm-mysql-config.cli      (Unix / Linux)

<JBOSS_HOME>\bin\jboss-cli.bat --file=jbpm-mysql-config.cli     (Windows)

To switch to PostgreSQL use following command when server is stopped

<JBOSS_HOME>/bin/jboss-cli.sh --file=jbpm-postgres-config.cli      (Unix / Linux)

<JBOSS_HOME>\bin\jboss-cli.bat --file=jbpm-postgres-config.cli     (Windows)

These scripts assume that database is installed and some default configuration is present:

  • host → localhost

  • port → 3306 for MySQL and 5432 for PostgreSQL

  • database name → jbpm

  • user name → jbpm

  • password → jbpm

in case the values are not correct, edit them in the script files jbpm-mysql-config.cli for MySQL and jbpm-postgres-config.cli for PostgreSQL - in both scripts values to be updated are on line 17.

There is H2 script as well to go back to defaults.

After running the script the only thing that is needed is to start the server.

Running jBPM Docker image

If you already have Docker installed on your local machine, all you need to do is run the following command:

docker run -p 8080:8080 -p 8001:8001 -d --name jbpm-server-full jboss/jbpm-server-full:latest

Once container and web applications started, you can navigate to it and login using the username wbadmin and password wbadmin or any of the users available in the Business Central listed in the section below.

http://localhost:8080/business-central

that’s all that is needed to get fully configured and running jBPM distribution that includes:

  • WildFly server

  • Business Central

  • KIE Server

  • jBPM Case Management showcase

  • jBPM Service repository

Everything configured to work together smoothly and you can access them at following locations:

  • Business Central - http://localhost:8080/business-central

  • KIE Server - http://localhost:8080/kie-server/services/rest/server

  • KIE Server Swagger docs - http://localhost:8080/kie-server/docs

  • jBPM case management - http://localhost:8080/jbpm-casemgmt

Explore your running environment

Business Central

Business Central provides feature rich authoring and management environment. It consists of:

  • Design perspectives where users can create projects and pages

  • Deploy perspectives where users can manage execution servers

  • Manage perspectives where users can take control over process and case instances

  • Track perspectives where users can access assigned tasks and reports

Business Central can be accessed (once the server was started) at http://localhost:8080/business-central

There are set of predefined users that can be used to directly logon to Business Central:

  • wbadmin/wbadmin

  • krisv/krisv

  • john/john

  • mary/mary

  • katy/katy

  • jack/jack

  • kieserver/kieserver1!

Additional users can be created via Business Central Admin section.


KIE Server Swagger documentation

KIE Server is the execution server that provides various capabilities

  • BRM (business rules)

  • BPM (business processes)

  • BRP (planning/solver)

  • Case Management

  • DMN (decisions)

Its complete REST api documentation can be accessed at http://localhost:8080/kie-server/docs


jBPM Case Management Showcase

jBPM Case Management Showcase is a web application that aims at illustrating various case management building blocks in action. These are UI components built on top of KIE Server REST api for case management. It’s not intended for production usage but more for getting better understanding of the capabilities. Case management, in general should be business focused so generic UI won’t provide much business context to the knowledge workers.

jBPM Case Management application can be accessed at http://localhost:8080/jbpm-casemgmt

Same users as for Business Central can be used to logon to this application.


Try examples

Once you get yourself familiar with the tools of the jBPM it’s time to see something running. The easiest way is to try one of the examples shipped with the platform, it will show typical path users take to design, build and execute business logic.

Evaluation process

Evaluation process is a business process that is human centric (heavily uses human actors to perform work) that defines a complete flow of activities to perform employee evaluation. This examples shows:

  • importing example project

  • building and deploying project

  • verifying deployment to execution server

  • executing process instance and work with human tasks

  • exploring reporting capabilities


IT Orders case

IT Orders case is more advanced use of the jBPM that relies on dynamic nature of business problems. It allows to take actions based on data so it’s more event/data driven than structured processes. Although it still allows users to take advantage of process fragments to express bit of workflows within the case. This examples shows:

  • importing example project

  • building and deploying project

  • verifying deployment to execution server

  • use of jBPM Case management Showcase application

  • document upload and handing

  • monitoring of case instance in Business Central

More about case management capabilities can be found in following articles

  • Introduction to jBPM Case Management

  • Working with case data

  • Working with dynamic activities


Build your project from scratch

Building new project from scratch can give you an option to have a clean start where you design your process or case to fit your needs. This example shows:

  • creating new project

  • creating new asset - business process

  • build and deploy to execution server

  • execute process instance


Technical details

By default everything runs using H2 database with file storage but this image also enables you to switch to other databases like MySQL or PostgreSQL. All dependencies and data source configurations are done automatically, you just need to specify a set of environment variables. Alternatively, you can use the provided Docker Compose examples to get started using an alternative database. When using the provided Docker Compose examples, all dependencies to get a running container and configuration for the target database is already set in place.

The Docker Compose examples are located in the following repository: https://github.com/jboss-dockerfiles/business-central/tree/master/docker-compose-examples

MySQL Example using Docker Compose

docker-compose -f docker-compose-examples/jbpm-full-mysql.yml up

MySQL Example using remote connection

docker run -p 8080:8080 -p 8001:8001 -d --name jbpm-server-full -e JBPM_DB_DRIVER=mysql -e JBPM_DB_HOST=172.17.0.1 jboss/jbpm-server-full:latest

PostgreSQL Example using Docker Compose

docker-compose -f docker-compose-examples/jbpm-full-postgres.yml up

PostgreSQL Example using remote connection

docker run -p 8080:8080 -p 8001:8001 -d --name jbpm-server-full -e JBPM_DB_DRIVER=postgres -e JBPM_DB_HOST=172.17.0.1 jboss/jbpm-server-full:latest

Environment variables

  • JBPM_DB_DRIVER = Specify which database driver to use. Allows either: 'h2', 'mysql' or 'postgres'. Default: 'h2'.

  • JBPM_DB_HOST = Specify hostname of the database. Default: 'localhost'

  • JBPM_DB_PORT = Specify port of the database. Default: '3306' if using 'mysql' driver or '5432' in case of 'postgres'.

  • JBPM_DB_NAME = Specify name of the database to use. Default: 'jbpm'

  • JBPM_DB_USER = Specify user to use to authenticate to the database. Default: 'jbpm'

  • JBPM_DB_PASSWORD = Specify user’s password to use to authenticate to the database. Default: 'jbpm'

Useful Docker commands

View container logs

$ docker logs -f jbpm-server-full

List running containers

$ docker ps
CONTAINER ID        IMAGE                           COMMAND                CREATED             STATUS              PORTS                                            NAMES
88f2e110aff5        jboss/jbpm-server-full:latest   "./start_jbpm-wb.sh"   7 minutes ago       Up 7 minutes        0.0.0.0:8001->8001/tcp, 0.0.0.0:8080->8080/tcp   jbpm-server-full

or

$ docker ps -a

In case you want to also list stopped containers.

Stopping the jBPM Server Full Distribution container

$ docker stop jbpm-server-full

Delete jBPM Server Full Distribution container and all its data

$ docker rm jbpm-server-full

Stopping the Docker Compose related containers

$ docker-compose -f docker-compose-examples/jbpm-full-mysql.yml stop

or

docker-compose -f docker-compose-examples/jbpm-full-postgres.yml stop

Docker volumes

When using the provided Docker Compose configurations, both database images ( MySQL and PostgreSQL ) have local volumes configured to store its data in the local file system. You can list and remove these via docker volume commands. Example:

$ docker volume ls
DRIVER              VOLUME NAME
local               dockercomposeexamples_mysql_data
$ docker volume rm dockercomposeexamples_mysql_data

For a comprehensive overview about all settings and details about the jbpm-server-full image, please visit its Docker Hub page.

Latest News
  • Take a look at jBPM 7.49.0
    Wed 3 February 2021 - jBPM 7.49.0 is out, including bug fixes and exciting new features!
  • Take a look at jBPM 7.48.0
    Wed 13 January 2021 - jBPM 7.48.0 is out, including bug fixes and exciting new features!
  • Take a look at jBPM 7.47.0
    Fri 4 December 2020 - jBPM 7.47.0 is out, including bug fixes and exciting new features!
  • Take a look at jBPM 7.46.0
    Thu 12 November 2020 - jBPM 7.46.0 is out, including bug fixes and exciting new features!
  • Take a look at jBPM 7.45.0
    Fri 23 October 2020 - jBPM 7.45.0 is out, including bug fixes and exciting new features!
  • Take a look at jBPM 7.44.0
    Tue 6 October 2020 - jBPM 7.44.0 is out, including bug fixes and exciting new features!
  • Take a look at jBPM 7.43.1
    Mon 14 September 2020 - jBPM 7.43.1 is out, including bug fixes and exciting new features!
Archive
Latest Tweets
Latest Tweets by jBPM

KIE projects

  • Drools rule engine
  • OptaPlanner constraint solver
  • jBPM workflow engine

Community

  • Blog
  • Get Help
  • Team
  • Governance
  • Academic research

Code

  • Build from source
  • Submit a bug
  • License (Apache-2.0)
  • Release notes
Sponsored by
Red Hat
More coder content at
Red Hat Developers
© Copyright 2006-2021, Red Hat, Inc. or third-party contributors - Privacy statement - Terms of use - Website info