Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
%e cription& BISP is committed to provide BEST learning material to the beginners and advance learners. In the same series, we have prepared a complete end-to end Hands-on Beginners G ide !or "racle So#. The doc ment !oc ses Service-component architect re $S%#& and BPE' Process(. )oin o r pro!essional training program and learn !rom e*perts.
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 0
Content
%ontents....................................................................................................................................... 2 S%# #rchitect re and BPE' P4"%ESS ........................................................................................ 7 B8SI3ESS P4"%ESS E9E%8TI"3 '#3G8#GE $BPE'&.....................................................................: The 4ole o! BPE'....................................................................................................................... ; <h+ .o I 3eed BPE'.................................................................................................................. ; STEP <ISE P4"%E.84E "= P4")E%T P4"%ESS ST8.E3T.........................................................6
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 2
(he A
em"l) *odel, which de!ines how components are combined, lin>ed and
(he Implementation *odel& which de!ines how services are pac>aged and accessed
!or speci!ic programming lang ages.
(he Polic) *odel& which de!ines service policies independent o! the programming code. (he "inding model , which de!ines how components are accessed independent o! the
programming code
The speci!ications speci!+ that an application designed with S%# sho ld have the !ollowing advantages,
.eco pling o! application b siness logic !rom the details o! its invo>ed service calls Target services in a m ltit de o! lang ages incl ding %AA, )ava, %"B"', and PHP as well as 9B', BPE', and 9S'T The abilit+ to seamlessl+ wor> with vario s comm nications constr cts incl ding "ne-<a+, #s+nchrono s, %all-4et rn, and 3oti!ication The abilit+ to CBindC to legac+ components or services , accessed normall+ b+ technologies s ch as <eb Services, E)B, )BS, )%#, 4BI, 4P%, %"4B# D others. The abilit+ to declare $o tside o! b siness logic& the E alit+ o! Service re? irements, s ch as Sec rit+, Transactions and the se o! 4eliable Bessaging .ata co ld be represented in Service .ata "b@ects
The val e proposition o! S%#, there!ore, is to o!!er the !le*ibilit+ !or tr e composite applications, !le*ibl+ incorporating re sable components in an S"# programming st+le. The overhead o! b siness logic programmer concerns regarding plat!orms, in!rastr ct re, pl mbing, policies and protocols are removed, enabling a high degree o! programmer prod ctivit+
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 7
S%# is said to provide interoperabilit+ thro gh an approach called C#ctivationC. It is the method that provides the highest degree o! component a tonom+, compared to older CmediationC $e.g. )BI& or CInvocationC method sed in )%#,
The SCA A em"l) *odel consists o! a series o! arti!acts, which are de!ined b+ elements contained in 9B' !iles. #n S%# r ntime ma+ have other non-standard representations o! the arti!acts represented b+ these 9B' !iles, and ma+ allow !or the con!ig ration o! s+stems to be modi!ied d+namicall+. However, the 9B' !iles de!ine the portable representation o! the S%# arti!acts. The basic arti!act is the Compo ite, which is the nit o! deplo+ment !or S%# and which holds Service which can be accessed remotel+. # composite contains one or more Component , which contain the b siness ! nction provided b+ the mod le. %omponents o!!er their ! nction as services, which can either be sed b+ other components within the same mod le or which can be made available !or se o tside the mod le thro gh Entr) Point . %omponents ma+ also depend on services provided b+ other components F these dependencies are called 'e+erence . 4e!erences can either be lin>ed to services provided b+ www.bispsol tions.com www.bisptrainigs.com www.h+periong r .com Page G
other components in the same mod le, or re!erences can be lin>ed to services provided o tside the mod le, which can be provided b+ other mod les. 4e!erences to services provided o tside the mod le, incl ding services provided b+ other mod les, are de!ined b+ E*ternal Services in the mod le. #lso contained in the mod le are the lin>ages between re!erences and services, represented b+ ,ire . # %omponent consists o! a con!ig red Implementation, where an implementation is the piece o! program code implementing b siness ! nctions. The component con!ig res the implementation with speci!ic val es !or settable Propertie declared b+ the implementation. The component can also con!ig re the implementation with wiring o! re!erences declared b+ the implementation to speci!ic target services. %omposites are deplo+ed within an SCA S) tem. #n S%# S+stem represents a set o! services providing an area o! b siness ! nctionalit+ that is controlled b+ a single organiHation. #s an e*ample, !or the acco nts department in a b siness, the S%# S+stem might cover all !inancialrelated ! nctions, and it might contain a series o! mod les dealing with speci!ic areas o! acco nting, with one !or c stomer acco nts and another dealing with acco nts pa+able. To help b ild and con!ig re the S%# S+stem, %omposites can be sed as component implementations, in the same wa+ as )ava classes or BPE' processes. In other words, S%# allows a hierarch+ o! composites that is arbitraril+ deep - s ch a nested model is termed rec rsive. The capt re and e*pression o! non-! nctional re? irements, s ch as sec rit+, is an important aspect o! service de!inition, and has an impact on S%# thro gho t the li!ec+cle o! components and compositions. S%# provides the Polic) -ramewor. to s pport speci!ication o! constraints, capabilities and E alit+ o! Service $EoS& e*pectations, !rom component design thro gh to concrete deplo+ment.
Services provide the o tside world with an entr+ point to the S"# composite application. The <S.' !ile o! the service advertises its capabilities to e*ternal applications. These capabilities are sed !or contacting the S"# composite application components. The binding connectivit+ o! the service describes the protocols that can comm nicate with the service, !or e*ample, S"#PIHTTP or a )%# adapter. 4e!erences enable messages to be sent !rom the S"# composite application to e*ternal services in the o tside world.
<ires enable +o to graphicall+ connect the !ollowing components in a single S"# composite application !or message comm nication,
Services to service components Service components to other service components Service components to re!erences
<hen properl+ implemented, S%# can help an enterprise to minimiHe the wor>load on its developers, shorten learning c rves, !acilitate re se o! services and pdate policies witho t having to modi!+ the programming. S%# also !acilitates control over access methods and the implementation o! sec rit+-related co ntermeas res.
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page J
Introduction
BPE' stands !or B siness Process E*ec tion 'ang age, and comes !rom a standards consorti m consisting o! BE# S+stems, IBB, and Bicroso!t, BPE' combines and replaces IBBKs <eb Services =low 'ang age $<S='& and Bicroso!tKs 9'#3G speci!ication. BPE' provides an (orchestration engineL !or describing e*changes o! in!ormation internall+ or e*ternall+. BPE' deals e*plicitl+ with the ! nctional aspects o! b siness processes, control !low $branch, loop, parallel&, as+nchrono s conversations and correlation, long r nning nested nits o! wor>, !a lts and compensation. BPE' directl+ addresses these b siness process challenges, coordinating as+nchrono s comm nication between services, correlating message e*changes between parties, implementing parallel processing o! activities, manip lating data between partner interactions, s pporting long r nning b siness transactions and activities, and providing consistent e*ception handling.
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page :
BPE' is a 9B'-based wor>!low de!inition lang age that allows b sinesses to describe inter or intra enterprise b siness processes that are connected via <eb services. BPE' becomes the (gl eL to bind <eb services into a cohesive b siness sol tion, !acilitating their orchestrated interaction both within and between enterprises. # B siness Process sing BPE' can compose m ltiple <eb services, e!!ectivel+ creating a completel+ new b siness application with its own p blic inter!ace to end sers $internal or e*ternal&. BPE' opens a completel+ new wa+ or at least enhanced wa+, !or so!tware development !or mainstream b siness applications to allow a programmer to describe a b siness process that will ta>e place across the Internet. BPE' provides an 9B'-based grammar !or describing the logic to control and coordinate <eb services participating in a process !low. This grammar can be interpreted and e*ec ted b+ a BPE' orchestration engine, which is controlled b+ one o! the participating b siness parties. The engine coordinates all o! the activities in the process, and controls the s+stemKs corrective activities when e*ceptions occ r. BPE' b ilds on and e*tends 9B' and <eb Services speci!ications
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page M
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page ;
4ight clic> on *sd--N !ile name$St dent.*sd& --N Target 3amespace$http,IIwww.bispsol tions.comItrainingIsoaIschemaISt dent&--Npre!i* $stdob@& --No>
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 6
Step 4, .esign *sd as according to S%# i.e with the help o! components or in design mode ,
%lic> on element D rename it as St dent D press Enter >e+. Step 5, 4ight %lic> on target namespace D clic> comple* t+pe
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 0/
Step $& 4ight clic> on St dentT+pe ---N insert inside comple* T+pe--Nse? ence
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 00
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 02
then clic> on element2 D rename it as 3 mber D press enter D so on ... !or Email, 'ang0Bar>s, 'ang2Bar>s, 'ang7Bar>s .
Step 2:, clic> on 3ame D and write its t+pe as *sd,string in Propert+ inspector located in right pane D hit enter .
Similarl+ !or 3 mber element. Step 22, , clic> on Email D and write its t+pe as *sd,string in Propert+ inspector located in right pane D hit enter
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 07
Step 23& clic> on 'ang0mar>s D and write its t+pe as *sd,integer in Propert+ inspector located in right pane D hit enter
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 0G
Step 24 , %lic> on St dent D write its t+pe as stdob@,St dentT+pe in Propert+ inspector located in right pane D hit enter
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 0J
Step 2$, clic> on comple* T+pe0 D rename it as St dent4es ltT+pe D hit Enter
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 0:
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 0M
Step 29& 3ow add three more elements $4es lt , Total, #verage& b+ right clic>ing on its se? ence ---N insert inside se? ence---N element Then clic> on elements D rename them D set their t+pes as on earlier disc ssion .
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 0;
Step 3: & 4ight %lic> on target namespace D clic> insert inside schema---N element so select two elements D rename element0 as ProcessSt dent4e? est D rename element2 as ProcessSt dent4esponse as shown below ,
Step 32& %lic> on ProcessSt dent4e? est D write its t+pe as stdob@,St dentT+pe in Propert+ inspector located in right pane D hit enter
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 06
Step 33& 4ight clic> on ProcessSt dent4esponse ---N insert inside element --Nse? ence. Then 4ight %lic> on se? ence ---Ninsert inside se? ence---Nelement %lic> on element D rename it as St dent D press Enter >e+. !inall+ %lic> on ProcessSt dent4esponse D write its t+pe as stdob@,St dent4es ltT+pe in Propert+ inspector located in right pane D hit enter
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 2/
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 20
Step 36, %reate BPE' Process This composite .*ml is partitioned into three sections 0. E*posed Services 2. %omponents 7. E*ternal re!rences
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 22
Step 3$, =ill all its blan> spaces 3ame $ProcessSt dentProcess& ----N3ameSpace $'eave as it is&---NTemplate$Select S+nchrono s BPE' process&----N Service 3ame$ProcessSt dentService&----N mar> E*pose as a S"#P service ----N Transaction $re? ired& ----N %lic> on Inp t Browse to select inp t o! wsdl -----N D then %lic> on " tp t Browse to select " tp t o! wsdl
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 27
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 2G
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 2J
Step 39, %lic> on ProcessSt dentProcess.wsdl in le!t hand pane $This wsdl is a tomaticall+ generated in S+nchrono s BPE' Process&
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 2:
Step 4:, "n clic>ing ProcessSt dentProcess.wsdl we can see a tomatic generated wsdl !ile
Scroll .own
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 2M
Step 43& Since we have alread+ created BPE' Process clic> on %omposite on le!t pane To create ProcessSt dentProcess.bpel clic> on ProcessSt dentProcess
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 2;
"n %lic>ing we can see the !ollowing Step 44 %lic> on 4es lt. -ariable icon D create new variables to store Total, #verage,
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 26
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 7/
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 70
Step 49, "bserve s ccess! ll+ created -ariables now clic> o>.
Step5:, .rag assign activit+ =rom %omponent Palette located at 4ight Pane o! window D >eep it in between receive Inp t D repl+" tp t
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 72
Step 53, %lic> on %op+ 4 les %lic> E*pression .rag it D >eep it in Total-ar nder -ariables
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 77
Step 54& %lic> 'ang0Bar>s ---N insert into e*pression ---N pl s sign$A&--N 'ang2Bar>s---N insert into e*pression ---N pl s sign$A&--N 'ang7Bar>s---N insert into e*pression---N %lic> ">
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 7G
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 7J
Step 56, %lic> Total-ar nder BPE' -ariables---N insert into e*pression ---N Select Bathematical = nction choose .ivide ---N insert into e*pression ---N 7./$Since n mber o! s b@ects are three &---N "1
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 7:
Step 57, .rag Switch activit+ =rom %omponent Palette located at 4ight Pane o! window D >eep it in between #ssigncalc lation D repl+" tp t
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 7M
Switch #ctivit+ , Switch activit+ is as similar as i! else condition in other programming lang age e*ample c. This activit+ consists o! an ordered list o! one or more conditional branchesde!ined in a case branch, !ollowed optionall+ b+ an otherwise branch. Thebranches are considered in the order in which the+ appear. The !irst branch whose condition is tr e is ta>en and provides the activit+ per!ormed !or the switch. I! condition is !alse, then the otherwise branch is ta>en. I! the otherwise branch is not e*plicitl+ speci!ied, then an otherwise branch with an empt+ activit+ is ass med to be available. The switch activit+ is complete when the activit+ o! the selected branch completes
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 7;
Step 6:, %lic> 'ang0Bar>s ---N insert into e*pression ---N greater e? als 7J--N 'ang2Bar>s--N insert into e*pression ---N greater e? als 7J--N 'ang7Bar>s---N insert into e*pression---N greater e? als 7J--N %lic> ">
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page 76
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page G/
Step 63, .rag D .rop #ssign activit+ nder tr e condition as shown below
%lic> E*pression
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page G0
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page G2
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page G7
Step 6$, .rag D .rop #ssign activit+ nder tr e condition D edit is #ssign4es lt as shown below
.rag D drop it in 4es lt-ar nder -ariables www.bisptrainigs.com www.h+periong r .com Page GG
<rite nder
Step 68, To assign o tp t drag D drop #ssign activit+ as shown below D edit it as #ssign" tp t
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page GJ
Step 69, Bap ProcessSt dent4esponse as shown in diagram so that we can get o tp t response according to mapping elements then clic> "1
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page G:
Step $:, #ssign o tp t completed D also BPE' process completed 3ow %lic> on %ompile Icon shown below
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page GM
B ild s ccess! l
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page G;
.eplo+ment =inished.
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page G6
3ote, Be!ore .eplo+ment Start <eblogic #dmin Server as disc ssed in m+ previo s doc ment "racle Soa Part I- .oc. Step $3 , %lic> on Browser icon shown below,
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page J/
3ote , Here localhost is application server D M//0 is a port in which enterprise manager is r nning.
Step $5 & 'ogin sing credentials 8ser 3ame ,weblogic Password , welcome0 clic> on login
Step $6& <e have s ccess! ll+ login inside Enterprise manager 00g $=armOdevOsoa& we can clearl+ observe here that admin server is p D all deplo+ment stat s is also p it means that o r admin server is r nning . 3ow In le!t pane o! window nder =armOdevOsoa clic> on S"# radio b tton now again e*pand D nder de!a lt we can easil+ see all the deplo+ed pro@ects. %lic> twice on Pro@cessSt dent Pro@ect .
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page J0
Step $$& "bserve that all in!ormation regarding to ProcessSt dent Pro@ect is given 4 nning instances / means that +et we have not tested an+ instance. Total / Pro@ect Stat s #ctive 3ow clic> on Browser tab
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page J2
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page J7
Step $8& 3ow it is a %oncrete <S.' , 4ight clic> on page D select -iew Page So rce
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page JG
Step $9& %op+ location address D paste in browser 84' D now get the #BST4#%T <S.' D observe it .
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page JJ
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page J:
location address D paste in browser 84' D now get the imported *sd
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page JM
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page J;
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page J6
Since binding means pac>age or soap envelope so message is enveloped inside soap binding as shown below in red bo* ,
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page :/
Step 74& Scroll down page D Provide re? ired inp t o! a st dent
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page :0
%lic> on 9ml -iew , 3ow observe that the inp t message is pac>ed inside soap binding Envelope
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page :2
2& 9B' -IE< "bserve response in 9B' view shown below D clic> on 'a nch =low Trace ,
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page :7
Step 76& =a lts , / State , completed .o ble %lic> ProcessSt dentProcess D see the instance.
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page :G
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page :J
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page ::
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page :M
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page :;
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page :6
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page M/
Step 84& 3ow again do ble clic> on ProcessSt dentPro@ect on le!t pane D observe that a!ter !irst test it created Instance with its instance id 0:///G D instance state completed. 3ow since we have completed o r test D wanted to e*it !rom enterprise manager , %lic> on Sh t.own Tab D then 'og" t.
www.bispsol tions.com
www.bisptrainigs.com
www.h+periong r .com
Page M0