bpel activities document soa
TRANSCRIPT
-
7/26/2019 Bpel Activities Document SOA
1/5
BPEL it is used to orchestrate the inputs in order to create an application in the SOA
suite.
We are having many activities in BPEL which can be called as the building
blocks o BPEL. !sing BPEL we will orchestrate the inputs to generate the
application based on customer needs. "he orchestration process will be
done with the help o these building blocks called activities. "here are many activities in BPEL. Every activity will be having a special
unctionality in it. "here are around #$ activities in SOA S!%"E BPEL&.'.
ASSIGN:
"his is the activity used to assign the variables rom input to output and rom
output to the result. With this assigning unctionality the variables will be assigning the input
variable to the output variable which means the navigation o the properties
and the values o the inputs to the outputs will be done.
RECEIVE:
"he unctionality o this activity can be known by the name itsel.
%t receives the inputs rom the source side in(to the BPEL. Even it can receive
rom the web(services too. But we can interact with only one web(service at once with this )E*E%+E
activity. We will use this even ater the invoking process.
INVOKE:
"his is used to get the data rom the web(services.
,rom the web(services it will invoke the variables o the web(service which
will be the input or the other process. Ater invoking a web(service the invoked variable will be given to the receive
activity in(order to receive it. We can invoke the multiple web(services.
PICK:
"his is also having the same unctionality o receive activity but- it can
interact with one or more web(services at once. "hat is the maor di/erence between the receive and pick activities.
FLOW:
% we are aware o the proect 0ow- we will be using this activity in the proect
development stage.
-
7/26/2019 Bpel Activities Document SOA
2/5
% we know the number o operations to be perormed in the proect we will be
using this activity. %t won1t support the parallel transactions by deault. We need to set the 2O2(
BLO*3%24(%2+O3E property as true- in order to make them to support or the
parallel transactions.
FLOWN:
% we are not aware o the 0ow o the proect- we will be using this activity.
% we don1t know the number o operations to be perormed in the
development stage we will be using this ,LOW2 activity here in which we can
de5ne the number o operations to be perormed in runtime. "his will supports the parallel transactions deault.
SWITCH:
We can write the conditions or any logics here in switch activity. We will write
the conditions based on the client re6uirement. We will be having two branches in this switch activity. One is the case branch
and the other one is otherwise branch. %n case branch we can write the description about the condition and in the
condition block- we will write the condition which is de5ned as per the client1s
re6uirement. "he condition can be written in the e7pression builder and the other wise
branch does not any thing on that. % the condition is not satis5ed the inputs will be gone away to the otherwise
branch. We can take the switch activity inside the scope or se6uence.
We won1t write any iteration conditions in switch.
WHILE:
We can write the conditions here while activity8 the condition will be an
iterative condition. %t will also have the other wise branch but- the other wise branch will be
e7ecuted only ater the iteration process has been completed.
WAIT:
"his activity makes the application to wait up to the time given by the user. % the client want to stop the process and restart it again ater some time- till
then there is no need to terminate the process and we can use this wait
activity or keeping the work on hold.
EMPTY:
"his activity does nothing in the process.
-
7/26/2019 Bpel Activities Document SOA
3/5
Empty means it won1t do any thing in the process and we will get the process
as same.
TERMINATE:
"erminate activity- by the name itsel we can know that the activity1s
unctionality that it terminates the process o the application orceully. "he orceul termination o the process can be done by this activity- i we
want the process to be stopped immediately.
SCOPE:
% we use this activity the range o the process will be within the scope block.
"he process won1t work outside o the block o the scope activity.
SE!ENCE:
Se6uence activity will be used or the transactions to be done in se6uential
way which will be in an order.
E"m#$%:
"his activity makes the e(mail noti5cations in the process.
%n(order to use the e(mail activity we need to change the setting s in the E9
:E2"E)P)%SE(9A2A4E);. We have to change the properties o the noti5cations in the E9. %n the
noti5cations palate we have to go the e(mail and click on the email properties
and we need to give the mail address that we want to send the mail and we
have to give the password also in(order to check the mail once. %n such a way we can notiy through the e(mail activity.
CATCH:
"he catch block is used to handle the known aults in SOA.
We can handle the aults like remote ault- binding ault- mismatching- etc.
,ault handling process using activities is called as process based ault
handling.
CATCH"ALL:
"he catch(all block is used to handle the un(known aults in SOA.
We can handle the B!S%2ESS(,A!L"S with this catch(all activity.
"he business(aults will be designed by the developers according to the client
re6uirement.
THROW:
-
7/26/2019 Bpel Activities Document SOA
4/5
"hrow activity throws the error to the catch branch and to the catch(all
branch in(order to 5nd out the error and to handle the ound error. %t will re(throw the error i it was not perect.
COMPENSATE"HAN&LER:
"his is used to roll back the transactions which had completed successully.
% we don1t want the transaction which we have did we can use the
compensate handler in(order to roll back it. E7< we have a train ticket but we don1t want to go then we will cancel the
ticket- it means the transaction once done is getting roll(backed. "hat1s the use o this compensate handler- we can roll back the transactions
done which are not necessary or us.
REPLY:
"his will gives the reply as output.
*oming to the mediator
ME&IATOR:
%t is a S*A :SE)+%*E(*O9POS%"E(A)*=%"E*="!)E; component.
%t is used to route the small amount o data and also or the initial level o
validation. %n mediator we need to map the variables rom source side to the target side.
We can even add some te7t near the output variables in the mapper 5le.
% the name spaces are same then there will be an auto(map option. We use the >+9 here in order to meet the di/erent name spaces.
9ediator is used or the short period proects.
We can transer only a small amount data through the mediator.
'!SINESS"R!LES:
"hese are most important in designing the proect.
"hese are made on the basis o client1s re6uirement only.
We can use the decision tables and rule sets in(order to make the rules.
,or any purchase order or any other proects we will set some ranges or the
data routing. We will set the ranges as per the client1s re6uirement so that the rules can be
made o the ranges. "hese are set by the developers and they should ollow the client
re6uirement or the rules ormation.
H!MAN"WORK"FLOW:
-
7/26/2019 Bpel Activities Document SOA
5/5
"his includes a human task in this process.
% there is any banking(domain or some thing- the loan should be approved by
the manager i the loan amount is very high. %n such cases we will route the data to the human work 0ow.
So in this case the client will connect to the work(list(apps and will give the
approval or reection. Ater the task has been perormed the noti5cation may sent to the concern
person i the client re6uired it so.
2oti5cations can be made in two ways &; e(mail and the other is $; ?9S
,or the e(mail we need to change the properties in the E9 and or the ?9S message
we need to create the ?2>% connections at three levels.:persistent storage- >B level
and adapter level;.
(MS:
"he ?9S adapter is having the ollowing options in it- they are< &; Produce message $; consume message #; subscribe as an event.
"hey are two types o messaging services in ?9S adapter
&; @ueue- $; "opic.
@ueue< will produce the message one(to(one in a serial way.
"opic< will produce the message one(to(many in a parallel way.
While creating the connection actory or the ?9S adapter we will select
whether we are creating a @ueue or a topic.