0% found this document useful (0 votes)
3 views52 pages

BPS360 F02 BPMN

Uploaded by

santa.claus
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views52 pages

BPS360 F02 BPMN

Uploaded by

santa.claus
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 52

● A process can have more than one start event.

Each start event is


independent and will generate a new process instance when triggered.
● If there is an end event, there must be at least one start event.
● There may be multiple end events within a single level of process
● If the end event is not used, then all flow objects that do not have any
outgoing sequence flow mark the end of a path in the process. However, the
process MUST NOT end until all parallel paths have completed.
● Intermediate events can be used to :
○ Show where messages are expected or sent within a process
○ Show delays are expected within a process
○ Disrupt the normal flow via exception handling
○ Show the extra work needed for compensation
● Intermediate event placed is a normal flow can be used in two ways.
○ The event can be used to respond to catch the event trigger
○ The event can be used to set off throw the event trigger.
● An intermediate event attached to the boundary of an activity can be used to
catch the event trigger.
It is a gating mechanism that either allows or disallows passage through the
gateway--that is, as tokens arrive at a gateway, they can be merged together on input
and/or split apart on output as the gateway mechanisms are invoked.
● A decision can be thought of as a question that is asked at a particular point in
the process. The question has a defined set of alternative answers. Each
answer is associated with a condition expression that is associated with a
gateway’s outgoing sequence flows
● A default path can optionally be identified to be taken in the event that none of
the conditional expressions evaluate to true.
● If a default path is not specified, and none of the conditions evaluated to true,
a runtime exception will result.
● A converging exclusive gateway is used to merge alternative paths. Each
incoming sequence flow token is routed to the outgoing Sequence Flow
without synchronization.
All condition expressions specified will be evaluated. The true evaluation of one
condition Expression does not exclude the evaluation of other condition Expressions.
All Sequence Flows with a true evaluation will be traversed by a token. Since each
path is considered to be independent, all combinations of the paths MAY be taken,
from zero to all.

A default path can optionally be identified to be taken in the event that none of the
conditional expressions evaluate to true. If a default path is not specified and the
Process is executed such that none of the conditional Expressions evaluates to true,
a runtime exception occurs.

A converging Inclusive Gateway is used to merge a combination of alternative and


parallel paths. A control flow token arriving at an Inclusive Gateway MAY be
synchronized with some other tokens that arrive later at this Gateway
A parallel gateway creates parallel paths without checking any conditions; each
outgoing sequence flow receives a token upon execution of this gateway. For
incoming flows, the parallel gateway will wait for all incoming flows before triggering
the flow through its outgoing sequence flows.
● An event gateway MUST have two or more outgoing sequence flows.
● The outgoing sequence flows of the event gateway MUST NOT have a
conditionExpression.
● Event-based gateways are configured by having outgoing sequence flows
target an intermediate event or a receive task in any combination
● When the first event in the event gateway configuration is triggered, then the
path that follows that event will used (a token will be sent down the event’s
outgoing sequence flows). All the remaining paths of the event gateway
configuration will no longer be valid. Basically, the event gateway configuration
is a race condition where the first event that is triggered wins.
To add a REST task, you need to add a Java task in place within the BPMN process
where you need to perform the invocation. Following fields can be included to create
REST Task.

basicAuthPassword -> Password for the username above


basicAuthUsername ->Username if the endpoints are secured
Headers -> header values in the format
"headerName1:headerValue1,headerName2:header Value2"
Input -> Request payload
Method ->HTTP method
outputVariable -> Name of the variable to save response
serviceURL -> <REST ENDPOINT URL>

WSO2 BPS supports invoking rest endpoints out of the box. Follow the following
steps to add a RESTTask to your workflow using Activity BPMN 2.0 designer.
BPMN SOAP tasks allows you to invoke partner services/web services within your
BPMN processes. This can be achieved by adding a Service Task and handling the
SOAP invocation part in a level implementation. BPS has provided this functionality
out of the box to avoid the difficulty of doing implementations by developers.

Adding a SOAP task to a process

In order to add a SOAP task to a BPMN process, you need to add a Java task in
place of the process where you need to do the invocation.
serviceURL - Endpoint url of the partner service
Payload - Request payload which is attached to the SOAP body when creating
the SOAP request
outputVariable - Name of the variable to save response
soapVersion - Soap version to be used when creating the SOAP request
Headers - SOAP header block which is attached to the SOAP header when
creating the SOAP request
transportHeaders - header values in the format
"headerName1:headerVal ue1,headerName2:header
Value2"
Only the core functionality of the REST API is addressed in this topic. In addition to
the functionality mentioned in this topic, there is more REST API functionality as well.
All this additional functionality is provided by the Activiti REST API. Refer to the
Activiti User Guide for more information.
Only the core functionality of the REST API is addressed in this topic. In addition to
the functionality mentioned in this topic, there is more REST API functionality as well.
All this additional functionality is provided by the Activiti REST API. Refer to the
Activiti User Guide for more information.

You might also like