JBoss BPM Suite Demo Satish Kale 1080 px


I am a Senior Middleware Solution Architect in Red Hat Inc.

This video shows a way to create simple process and rule; and execute the process using Red Hat JBoss BPM Suite.
Red Hat JBoss BPM Suite is a full fledged BPM Solution that includes BPM + BAM + Rules Engine + Complex Event Processing + Resource Planner.
It is based on open source project jBPM and Drools.

The use case is of a company ‘(‘Acme’)’ which desires to automate the VM ‘(‘Virtual machine’)’ provisioning and migration. Before they do that, they wish to validate the VM data ‘(‘e.x. memory allocated for a particular OS type’)’. This demo does no activities related to actual VM, but just shows how to create simple process. The steps in the demo could be followed to extend this to any use case you wish to model.

Software used in this demo.
Red Hat JBoss BPM Suite .
You can download it ‘(‘for evaluation purpose’)’ from jobs.org.
Follow steps of installation in following documentation link.

Following are the steps I followed in this demo.
Steps in the demo

1 Create Organization

2 Create repository

3 Create Data Object – VM Instance ‘(‘Assign proper group id’)’
3.1 vmInstanceId – BigInteger
3.2 name – String
3.3 createdDate – Date
3.4 hostId – BigInteger
3.5 numberOfCores – Integer
3.6 memory – Integer
3.7 isActive – boolean
3.8 isRunning – boolean
3.9 osType – String

4 Create Rule – Validate Memory for windows – rule-flow-group = validation

5 Create Process – VM Validation
5.1 Start
5.2 Gateway ‘(‘incoming’)’
5.3 Business Rule Task – Validate VM Data – rule-flow-group = validation – kcontext.getKnowledgeRuntime'(”)’ .insert'(‘ vmvalidation ‘)’
5.4 XOR Gateway –
5.4.1 java – return !'(‘vminstance.getIsActive'(”)”)’;
5.4.2 java – return vminstance.getIsActive'(”)’;
5.5 User Task – Modify VM Data – assign to logged in user.
5.6 Script Task – Print VM Data.
System.out.println ‘(‘ “Completed the validation successfully. $$$$$$ “‘)’ ;
System.out.println'(‘”The isActive status is “+ vminstance.getIsActive'(”)”)’;

5.7 End

5.8 At process level specify variable definitions – vminstance

5.9 At Modify VM Data –
5.9.1 DataInputSet
5.9.2 DataOutputSet
5.9.3 Assignments – Input mapping and Output mapping
5.10 Generate all user forms.
5.11 Keep Validation ON.
5.12 Save.

6 Save and build project. ‘(‘Change version accordingly’)’.

7 Open Process Definitions menu.

8 Click on the relevant ‘(‘latest version’)’ process definition and start instance.

9 Fill Data – Make sure you assign Memory value less than 1024 and osType as windows .

10 Press submit.

11 Click on Process Instances menu.

12 The process instance is stuck at Modify VM Data – User Task.

13 Go to Tasks List menu.

14 See the task – Modify VM Data . Select it and click on “Claim” or “Start”.

15 Modify value of memory to 1024 ‘(‘or more’)’ and isActive flag as true. Submit.

16 The Task is completed and so it the process instance.

17 You can click on Dashboards to look at simple report.

Thank You.

Nguồn: https://dothihoa.com

Xem thêm bài viết khác: https://dothihoa.com/cong-nghe


  1. Hi Satish, Thank you so much for this clear explanation. As i done the same thing showed in the demo. But i am getting this [KBase: defaultKieBase]: Process Compilation error vmInstance cannot be resolved vmInstance cannot be resolved. When i tried to build the project.
    When i see the logs it is showing the below issues.
    2020-02-17 15:15:46,371 ERROR [org.drools.core.xml.ExtensibleXmlParser] (EJB default – 10) Node Info: id: name:
    Parser message: (null: 16, 37): src-resolve: Cannot resolve the name 'di:Diagram' to a(n) 'type definition' component.

  2. Well explained!!! Do you know how can I read variables of finished process instances by rest? When I try, it just returns variables = null.

  3. Thanks for useful video. Requesting you, Can you please explained how jBPM application installed on Linux vm and windows vm.

  4. Hi Sir. Video is very usefull.
    I am getting error. As below
    [KBase: defaultKieBase]: Process 'VM Validation Automation' [vmmigration.VMValidationAutomation]: Node '' [4] Split does not have a constraint for Connection [type=DROOLS_DEFAULT] – [type=DROOLS_DEFAULT]
    Can you help me?

  5. Hi Satish, When I am trying to build the whole project , getting an error "Kcontext.getKnowledgeRuntime cannot be resolved to a type". I got to know that the getKnowledgeRuntime() method has been deprecated. Could you please help me with the error.

  6. Hi. MR Satish. i´m worwing with version 6.4. I have the next error
    Process Compilation error The method getIsOk() is undefined for the type ResiduosDO The method getIsOk() is undefined for the type ResiduosDO The method getIsOk() is undefined for the type ResiduosDO

  7. It was very helpful sathish , thanks a lot. One question while creating a guided rule if we choose dsl how to map the expander ? Also for this example if I want to execute via rest API what is the endpoint ?


Please enter your comment!
Please enter your name here