Red Hat JBoss BPM Suite
Red Hat JBoss Fuse
Christina Lin
JBoss Technology Evangelist
clin@redhat.com
RED HAT CONFIDENTIAL | ADD NAME2
Agenda
•  JBoss BPM Suite Overview
•  Building enterprise application architecture
with JBoss Fuse and JBoss BPM suite
•  Hands-on Lab
•  If we still have time:
IOT Demo with Fuse
RED HAT CONFIDENTIAL | ADD NAME3
Modern Enterprise
•  Cross-communication between departments
•  Dealing with multiple type of technologies
•  Continuously evolving
RED HAT CONFIDENTIAL | ADD NAME4
ERP
New Business Flow
System
A
System
B
System
C
System
D
JBoss BPM Suite
RED HAT CONFIDENTIAL | ADD NAME5
JBoss BPM Suite
Adding new business flow
New Business
Flow
Application
Human Task
Analysis, Develop
Business
Logic
•  Human task are not transparent
becomes bottleneck
•  Business logic hidden
in application, hard to
find and change
RED HAT CONFIDENTIAL | ADD NAME6
My Application
Biz
process
and logic
New product
rating
Government
Regulation
Competitor
Process
Change
Business Logic
Change
Priority Shift
New Market
My Application
My Application
JBoss BPM Suite
RED HAT CONFIDENTIAL | ADD NAME7
New Biz
Process
System
A
System
B
System
C
System
D ERP
Automated Business Process
JBoss BPM Suite
RED HAT CONFIDENTIAL | ADD NAME8
JBoss BPM Suite
RED HAT CONFIDENTIAL | ADD NAME9
CENTRALIZED
Repository
Applications
JBoss BPM Suite
RED HAT CONFIDENTIAL | ADD NAME10
JBoss BPM Suite
RED HAT CONFIDENTIAL | ADD NAME11
Standard Format: BPMN 2.0
Start Event
End Event
Throwing
Error Event
Catching
Timmer Event
Catching
Signal Event
Script Tasks
User Task
Service
Tasks
Business
Rule Task
Embedded
Sub-Process
Reusable
Sub-process
Multi-Instance
Sub-Process
RED HAT CONFIDENTIAL | ADD NAME12
When to use WHAT!!!??
Lightweight Enterprise
Integration solution with
an elastic footprint that
supports
Enables enterprise
business and IT users to
document, simulate,
manage, automate and
monitor business
processes and policies
RED HAT CONFIDENTIAL | ADD NAME13
JBoss BPM Suite
•  Define the business process and the people or
parties involve in it.
•  Define the services needs to provide for each step
and where they belong.
•  Linking the existing meaningful service together for
business purpose processes.
RED HAT CONFIDENTIAL | ADD NAME14
JBoss Fuse
•  Pattern based integration framework
•  Dynamic configuration and management
•  Multiple connectivity options
•  Never put single business code in ESB, Routing
Logic only!!!
RED HAT CONFIDENTIAL | ADD NAME15
Example Architecture – the case
RED HAT CONFIDENTIAL | ADD NAME16
Defining Processes on BPM Suite
RED HAT CONFIDENTIAL | ADD NAME17
Wrapping Services with Fuse
RED HAT CONFIDENTIAL | ADD NAME18
Wrapping Services with Fuse
RED HAT CONFIDENTIAL | ADD NAME19
Example Architecture
Technical
Details
RED HAT CONFIDENTIAL | ADD NAME21
JBoss BPM Suite – Remote API
BPM Server
Rules
Process/runtime/{deploymentId}/process/{processDefId}/start
/runtime/{deploymentId}/workitem/{processItemId}/complete
/runtime/{deploymentId}/withvars/process/{processDefId}/start
/task/{taskId}/activate
/task/{taskId}/claim
/task/{taskId}/claimnextavailable
/task/{taskId}/complete
XML
JSON
RED HAT CONFIDENTIAL | ADD NAME22
JBoss Fuse – Rest Client
<cxf:rsClient id="rsClient" address="http://localhost:8080/business-central/rest/runtime/
customer:evaluation:1.0/process/customer.evaluation/start"
serviceClass="org.blogdemo.endpoint.CustEval"
username="erics"
password="bpmsuite1!"
loggingFeatureEnabled="true" >
<cxf:providers>
<bean class="org.apache.cxf.jaxrs.provider.JAXBElementProvider"/>
</cxf:providers>
<cxf:headers>
<cxf:entry key="Charset" value="UTF-8"/>
</cxf:headers>
</cxf:rsClient>
<to uri="cxfrs:bean:rsClient?exchangePattern=InOut"/>
RED HAT CONFIDENTIAL | ADD NAME23
JBoss Fuse – Rest Server
JBoss Fuse
Restful Service
<rest path="/alert">
<get uri="/richcust/{custName}/{amt}" produces="application/json">
<to uri="direct:alert"/>
</get>
<post uri=“/custInfo/storedata" produces="application/json">
<to uri="direct:store"/>
</post>
</rest>
Service Route
Service Route
RED HAT CONFIDENTIAL | ADD NAME24
JBoss BPM Suite – REST & WS Tasks
Workshop
RED HAT CONFIDENTIAL | ADD NAME26
Workshop
Customer
Data
JBoss Fuse
JBoss BPM Suite
Customer Evaluation
Process
Alert Service
Rest
Rest
RED HAT CONFIDENTIAL | ADD NAME27
Task One: Deploy and Run Business Process
BPM Server
Repository
Process Instance
RED HAT CONFIDENTIAL | ADD NAME28
XML
JBoss Fuse
Parse the XML file
for information
needed
BPM Suite
Kick off business
Process
Returns process
result
Task Two: Trigger Business process through
JBoss Fuse
RED HAT CONFIDENTIAL | ADD NAME29
JBoss Fuse
Restful
Service
BPM Server
Task Three: Calling Restful Endpoint From
Process
RED HAT CONFIDENTIAL | ADD NAME30
RUN!!!
Task Four:

Integrating BPM with Fuse

  • 1.
    Red Hat JBossBPM Suite Red Hat JBoss Fuse Christina Lin JBoss Technology Evangelist clin@redhat.com
  • 2.
    RED HAT CONFIDENTIAL| ADD NAME2 Agenda •  JBoss BPM Suite Overview •  Building enterprise application architecture with JBoss Fuse and JBoss BPM suite •  Hands-on Lab •  If we still have time: IOT Demo with Fuse
  • 3.
    RED HAT CONFIDENTIAL| ADD NAME3 Modern Enterprise •  Cross-communication between departments •  Dealing with multiple type of technologies •  Continuously evolving
  • 4.
    RED HAT CONFIDENTIAL| ADD NAME4 ERP New Business Flow System A System B System C System D JBoss BPM Suite
  • 5.
    RED HAT CONFIDENTIAL| ADD NAME5 JBoss BPM Suite Adding new business flow New Business Flow Application Human Task Analysis, Develop Business Logic •  Human task are not transparent becomes bottleneck •  Business logic hidden in application, hard to find and change
  • 6.
    RED HAT CONFIDENTIAL| ADD NAME6 My Application Biz process and logic New product rating Government Regulation Competitor Process Change Business Logic Change Priority Shift New Market My Application My Application JBoss BPM Suite
  • 7.
    RED HAT CONFIDENTIAL| ADD NAME7 New Biz Process System A System B System C System D ERP Automated Business Process JBoss BPM Suite
  • 8.
    RED HAT CONFIDENTIAL| ADD NAME8 JBoss BPM Suite
  • 9.
    RED HAT CONFIDENTIAL| ADD NAME9 CENTRALIZED Repository Applications JBoss BPM Suite
  • 10.
    RED HAT CONFIDENTIAL| ADD NAME10 JBoss BPM Suite
  • 11.
    RED HAT CONFIDENTIAL| ADD NAME11 Standard Format: BPMN 2.0 Start Event End Event Throwing Error Event Catching Timmer Event Catching Signal Event Script Tasks User Task Service Tasks Business Rule Task Embedded Sub-Process Reusable Sub-process Multi-Instance Sub-Process
  • 12.
    RED HAT CONFIDENTIAL| ADD NAME12 When to use WHAT!!!?? Lightweight Enterprise Integration solution with an elastic footprint that supports Enables enterprise business and IT users to document, simulate, manage, automate and monitor business processes and policies
  • 13.
    RED HAT CONFIDENTIAL| ADD NAME13 JBoss BPM Suite •  Define the business process and the people or parties involve in it. •  Define the services needs to provide for each step and where they belong. •  Linking the existing meaningful service together for business purpose processes.
  • 14.
    RED HAT CONFIDENTIAL| ADD NAME14 JBoss Fuse •  Pattern based integration framework •  Dynamic configuration and management •  Multiple connectivity options •  Never put single business code in ESB, Routing Logic only!!!
  • 15.
    RED HAT CONFIDENTIAL| ADD NAME15 Example Architecture – the case
  • 16.
    RED HAT CONFIDENTIAL| ADD NAME16 Defining Processes on BPM Suite
  • 17.
    RED HAT CONFIDENTIAL| ADD NAME17 Wrapping Services with Fuse
  • 18.
    RED HAT CONFIDENTIAL| ADD NAME18 Wrapping Services with Fuse
  • 19.
    RED HAT CONFIDENTIAL| ADD NAME19 Example Architecture
  • 20.
  • 21.
    RED HAT CONFIDENTIAL| ADD NAME21 JBoss BPM Suite – Remote API BPM Server Rules Process/runtime/{deploymentId}/process/{processDefId}/start /runtime/{deploymentId}/workitem/{processItemId}/complete /runtime/{deploymentId}/withvars/process/{processDefId}/start /task/{taskId}/activate /task/{taskId}/claim /task/{taskId}/claimnextavailable /task/{taskId}/complete XML JSON
  • 22.
    RED HAT CONFIDENTIAL| ADD NAME22 JBoss Fuse – Rest Client <cxf:rsClient id="rsClient" address="http://localhost:8080/business-central/rest/runtime/ customer:evaluation:1.0/process/customer.evaluation/start" serviceClass="org.blogdemo.endpoint.CustEval" username="erics" password="bpmsuite1!" loggingFeatureEnabled="true" > <cxf:providers> <bean class="org.apache.cxf.jaxrs.provider.JAXBElementProvider"/> </cxf:providers> <cxf:headers> <cxf:entry key="Charset" value="UTF-8"/> </cxf:headers> </cxf:rsClient> <to uri="cxfrs:bean:rsClient?exchangePattern=InOut"/>
  • 23.
    RED HAT CONFIDENTIAL| ADD NAME23 JBoss Fuse – Rest Server JBoss Fuse Restful Service <rest path="/alert"> <get uri="/richcust/{custName}/{amt}" produces="application/json"> <to uri="direct:alert"/> </get> <post uri=“/custInfo/storedata" produces="application/json"> <to uri="direct:store"/> </post> </rest> Service Route Service Route
  • 24.
    RED HAT CONFIDENTIAL| ADD NAME24 JBoss BPM Suite – REST & WS Tasks
  • 25.
  • 26.
    RED HAT CONFIDENTIAL| ADD NAME26 Workshop Customer Data JBoss Fuse JBoss BPM Suite Customer Evaluation Process Alert Service Rest Rest
  • 27.
    RED HAT CONFIDENTIAL| ADD NAME27 Task One: Deploy and Run Business Process BPM Server Repository Process Instance
  • 28.
    RED HAT CONFIDENTIAL| ADD NAME28 XML JBoss Fuse Parse the XML file for information needed BPM Suite Kick off business Process Returns process result Task Two: Trigger Business process through JBoss Fuse
  • 29.
    RED HAT CONFIDENTIAL| ADD NAME29 JBoss Fuse Restful Service BPM Server Task Three: Calling Restful Endpoint From Process
  • 30.
    RED HAT CONFIDENTIAL| ADD NAME30 RUN!!! Task Four: