getting started-with-oracle-so a-vii

73
Getting Started with Oracle SoA Oracle SOA Project III Identify Top Students Lab#7 Description: 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 Beginner’s Guide for Oracle SoA. The document focuses on steps involved in complete Oracle SoA “Top Student Project”. Join our professional training program and learn from experts. History: Version Description Change Author Publish Date 0.1 Initial Draft Shiva Kant Pandey 21 st Aug 2012 0.1 Review#1 Amit Sharma 29 th Aug 2012 www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 1

Upload: amit-sharma

Post on 29-Nov-2014

447 views

Category:

Technology


1 download

DESCRIPTION

 

TRANSCRIPT

Getting Started with Oracle SoA

Oracle SOA Project III Identify Top Students Lab#7

Description: 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 Beginner’s Guide for Oracle SoA. The document focuses on steps involved in complete Oracle SoA “Top Student Project”. Join our professional training program and learn from experts.

History:Version Description Change Author Publish Date0.1 Initial Draft Shiva Kant Pandey 21st Aug 20120.1 Review#1 Amit Sharma 29th Aug 2012

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 1

TOP STUDENT PROJECT

Introduction to following Activities:

While Activity

Invoke Activity

OVERVIEW OF THE PROJECT:

We are going to select a top student from a list of students so we have to provide input as student detail & invoking a third party service ProcessStudentProcess which is discussed in previous DOC VI. This service process topper student request & provide response as a top students.

STEP W ISE PROCEDURE OF PROJECT TOPPER STUDENT PROJECT

Step 1: Create new project New --->All Technologies--->SOA Tier --->SOA project --->OK ---> Project Name (TopperStudentProject) ---> ADF Business Component---> SOA--->Next -->Empty Composite ---> Finish.Now you can see your project on left pane with all its contents so as we need to start our project with XSD .

Step 2: Create a new xsd file under project

Right click on xsd--> file name(StudentList.xsd) --> Target Namespace(http://www.bispsolutions.com/training/soa/schema/StudentList)-->

prefix (slobj) -->ok

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 2

now created successfully StudentList.xsd

Step 3: Design xsd as according to SCA i.e with the help of components or in design mode :

Click on element & rename it as TopperStudentRequest & press Enter key.

Step 4: Right Click on target namespace & click complex type

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 3

Step 5: Click on complex Type1 & rename it as StudentListType & hit Enter.

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 4

Step 6: Right click on StudentListType ---> insert inside complex Type-->sequence

Step 7: Click on element1 & rename it as Student & hit Enter

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 5

Step 8: Give Student element minoccur =1 & maxoccur =unbounded

Step 9: To import Student.xsd inside TopperStudentProject have two ways :

• Reuse xsd or wsdl by copying xsd or wsdl file physically from source project to target project directory

• Reuse xsd or wsdl by uploading from oramds repository

Now Right Click on target namespace & click import

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 6

Step 10: view on source mode & complete xsd import but before doing this copy Student.xsd from ProcessStudent Project ---> xsd ---> Student.xsd file to TopperStudentproject ---> xsd as shown below in sequence :

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 7

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 8

Now Successfully pasted Student.xsd inside TopperStudentProject --> xsd

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 9

Step 11: Click on Refresh twice or thrice

Student.xsd is now visible above StudentList.xsd

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 10

Step 12: Open StudentList.xsd & view on source mode & edit xsd import by writing namespace & schemalocation also register its namespace as shown below :

Step 13: View imported student xsd on Design mode as shown below:

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 11

Step 14: click on Student & and write its type as stdobj:StudentType in Property inspector located in right pane & hit enter

Step 15: Expand Student & observe design

Step 16: Right Click on target namespace & click complex type

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 12

Step 17: click on complex Type1 & rename it as StudentListResultType & hit Enter

then Right click on StudentListResultType ---> insert inside complex Type-->sequence

Step 18: : Right Click on sequence --->insert inside sequence--->element

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 13

Step 19: Click on element1 & rename it as TopperStudent & hit Enter

Step 20: click on TopperStudent & and write its type as stdobj:StudentResultType in

Property inspector located in right pane & hit enter

Step 21: : Expand Student & observe design

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 14

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 15

Step 22: Give Student element minoccur =1 & maxoccur =unbounded

Step 23: Similarly create another element TopperStudentResponse as shown below :

Step 24: : click on TopperStudentRequest & and write its type as slobj:StudentListType in

Property inspector located in right pane & hit enter

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 16

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 17

Step 25: Similarly click on TopperStudentResponse & and write its type as

slobj:StudentListResultType in Property inspector located in right pane & hit enter

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 18

Step 26: View Source mode :

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 19

Step 27: Right click on Composite.xml & click on open

Step 28: Create BPEL Process This composite .xml is partitioned into three sections

1. Exposed Services2. Components3. External refrences

Now right click on component section and choose BPEL Process

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 20

Step 29: Fill all its blank spaces Name (TopperStudentProcess) ---->NameSpace (Leave as it is)--->Template(Select Synchronous BPEL process)----> Service Name(TopperStudentService)----> mark Expose as a SOAP service ----> Transaction (required) ----> Click on Input Browse to select input of wsdl -----> & then Click on Output Browse to select Output of wsdl

On clicking input browse u can see as shown below

select TopperStudentRequest

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 21

On clicking Output browse u can see as shown below

select TopperStudentResponse

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 22

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 23

Step 30: Now we have created BPEL Process as shown below

Step 31 : Click on Source mode

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 24

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 25

Step 32: Since we have already created BPEL Process click on Composite on left pane

To create TopperStudentProcess.bpel click on TopperStudentProcess

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 26

NOTE: Since here we need to invoke third party service & so we have to create concrete ProcessStudent wsdl inside Topper Student Project

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 27

Step 33: Click on Oracle Home in linux Operating system as shown below :

Step 34: Open ProcessStudentdirectory & inside it copy ProcessStudentProcess.wsdl file

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 28

Step 35: Open Topper Student Project directory

Step 36: Paste wsdl file inside Topper Student Project :

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 29

Step 37: Open this wsdl file with Text Editor as shown below:

Visualization of wsdl file in Text editor

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 30

Step 38: Start Weblogic Admin server & deploy ProcessStudent Project because in above diagram wsdl is abstract & it contains only type, message type, port type, 7 partner link type so our motive is to make it concrete wsdl by adding information like binding ,services, etc.

Deployment Finished.

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 31

Step 39 : Click on Browser icon shown below:

Step 40: Start your enterprise manager by writing url http: //localhost:7001/em/

Note : Here localhost is application server & 7001 is a port in which enterprise manager is running.

Step 41 : Login using credentials User Name :weblogicPassword : welcome1click on login

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 32

Step 42: We have successfully login inside Enterprise manager 11g (Farm_dev_soa)we can clearly observe here that admin server is up & all deployment status is also up it means that our admin server is running .Now In left pane of window under Farm_dev_soa click on SOA radio button now again expand & under default we can easily see all the deployed projects. Click twice on ProcessStudent Project .

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 33

Step 43: Observe that all information regarding to ProcessStudent Project is given Running instances 0 means that yet we have not tested any instance.Total 0Project Status Active Now click on Browser tab

Step 44: Click on WSDL URL

Step 45: Now it is a Concrete WSDL , Right click on page & select View Page Source

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 34

Step 46: Copy namespace from here

Step 47: Paste namespace here in Text Editor

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 35

Step 48: Copy wsdl binding & service

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 36

Step 49: Paste here in Text Editor below wsdl port type as shown below :

Step 50: Click on Refresh twice or thrice

ProcessStudentProcess.wsdl is now visible above TopperStudentProcess.bpel

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 37

Step 51: Click on ProcessStudentProcess.wsdl in left hand pane & On clicking ProcessStudentProcess.wsdl we can see automatic generated wsdl file

Step 52: Click on Design Mode & design of service is shown below:

Step 53: To create third party service ProcessStudentProcess as Reference, right Click on External references & click on web service

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 38

Step 54: fill all relevant blank as shown below then click ok.

Step 55: Right click on partner links & click on Create partner link

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 39

Step 56: Name as ProcessStudent Reference & click on browse for wsdl URL

Step 57: Select Process StudentReference & click ok

Step 58:Now as we select wsdl url all other field will auto fill then click okas shown below:

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 40

Successfully created Partner links & references

View composite BPEL Processweb service consumer & web service provider is wired with BPEL process as shown below

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 41

Step 59: View TopperStudentProcess.bpel in source mode & observe all important components :

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 42

Step 60: Click on Variable icon & create new variables IndexVar ,CountVar &

TopMarks

then CountVar

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 43

then TopMarks

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 44

Finally check assigned variables & click ok .

Step 61: Drag & drop While Activity between receive input & reply Output .

NOTE: While Activity is used for looping purpose .

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 45

Step 62: Drag & drop assign activity & click twice on it as shown below:

Step 63: Explore Functions ----> BPEL XPath Extension Functions ----> CountNodes--->Insert Into Expression--->select Student under Input Variable---> Insert into expression .Delete bpws:getVariabledata which is shown by green box

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 46

Step 64: Now xpath expression is set for countVar , Click OK

Step 65: Click Expression Drag it & keep it in IndexVar under Variables

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 47

Step 66:Initialize index as 1

Step 67: 66:Initialize TopMarks as 0.

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 48

Step 68: Assigned varibles are shown below then click Ok

Step 69: Now we have assigned all variables & rename it as AssignTemp.

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 49

Step 70: Click on Expression icon

Step 71: Assign looping condition here Click IndexVar ---> insert into expression ---> Less equals --> insert into expression ---> CountVar---> insert into expression---> Click Ok

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 50

Step 72: Click OK

Step 73: Drag & drop Invoke activity & click twice on it as shown below:

Step 74: Fill Name (InvokeProcessStudent) then browse for Partner link

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 51

Step 75: Select ProcessStudentReference & click OK

Step 76: To select Input & Output to invoke ProcessStudentReference Click on first green plus sign for input & likewise for Output

Step 77: After Selecting Input & output click ok .

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 52

Step 78: Check all filled entries & click OK

On clicking Ok this window will appear & a wiring established between InvokeProcessStudent & ProcessStudent Reference

Step 79: Drag & drop Assign Activity & Rename It as AssignInvokeInput & then Click it twice :

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 53

Step 80: Assign input elements from Input variable to ProcessStudent_inputVariable then click Ok as shown below :

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 54

Step 81:Click on BPEL source mode & insert [$IndexVar] after Student so as index changes student changes & so easily we can input infinite number of students

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 55

Step 82: In design mode Drag & Drop Switch Activity so that bpel can set condition

MOTIVE OF SWITCH ACTIVITY : Our motive is setting condition that if total >= Top Marks then assign topmarks otherswise increment index & check for other student & finally assign invoked processed outputfrom third party service provider to reply Output to the service consumer .

Step 83: Browse under BPEL Variables ProcessStudent_OutputVariable ---> expand it & select Total --->Insert Into Expression ----> Browse under Functions-->AdvancedFunctions ---> Logical Functions---> greater equals ----> Insert Into Expression----> Browse under BPEL Variables TopMarks---> Insert Into Expression---->Click ok

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 56

Step 84: Click ok

Step 85: Drag & drop Assign Activity & Rename It as AssignTopMarks & then Click it twice :

Step 86: Assign from ProcessStudent_OutputVariable then Total To TopMarks & click OK

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 57

Step 87: Drag & drop Assign Activity & Rename It as AssignOutput & then Click it twice :

Step 88: Assign Output elements from ProcessStudent_OutputVariable to Reply OutputVariables then click Ok as shown below :

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 58

Step 89: Drag & drop Assign Activity & Rename It as AssignIncrement & then Click it twice:

Step 90: : Click Expression Drag it & keep it in IndexVar under VariablesNow click on index Var under BPEL Variables ----> Insert Into Expression ---> +1 --> Ok

Step 91: Click Ok

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 59

Step 92: Assign out put completed & also BPEL process completed Now Click on Complile Icon shown below:

Build SuccessfulSuccessful compilation with 0 errors & 0 warnings

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 60

Step 93: Deploy project by clicking TopperStudentProject.

Deployment Finished.

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 61

Note: Before Deployment Start Weblogic Admin Server as discussed in my previous document Oracle Soa Part IV Doc. Step 94 : Click on Browser icon shown below:

Step 95: Start your enterprise manager by writing url http: //localhost:7001/em/

Note : Here localhost is application server & 7001 is a port in which enterprise manager is running.

Step 96 : Login using credentials User Name :weblogicPassword : welcome1click on login

Step 97: We have successfully login inside Enterprise manager 11g (Farm_dev_soa)we can clearly observe here that admin server is up & all deployment status is also up it means that our admin server is running .

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 62

Now In left pane of window under Farm_dev_soa click on SOA radio button now again expand & under default we can easily see all the deployed projects. Click twice on TopperStudentProject .

Step 98: Observe that all information regarding to TopperStudentProject is given Running instances 0 means that yet we have not tested any instance.Total 0Project Status Active Now click on Browser tab

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 63

Step 99: Click on WSDL URL

Step 100 : Copy location address & paste in browser URL & now get the ABSTRACT WSDL & observe it .

Abstract wsdl shown below

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 64

Step 101 : Copy location address & paste in browser URL & now get the imported xsd & observe it .

XSD shown below :

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 65

Step 102 : Copy soap: address location

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 66

Click on Xml source

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 67

Step 103: Click on TEST & create instance

Step 104: Scroll down page & Provide required input of a students

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 68

Step 105: Click on Test Web Service

And get Response shown below:

1) TREE VIEW

2) XML VIEWObserve response in XML view shown below & click on Launch Flow Trace :

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 69

Step 106: Faults : 0

State : completed

Double Click TopperStudentProcess & see the instance

Step 107: Click on Flow shown below

fig(1)

fig(2) fig(3)

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 70

f

f

fig(4) fig(5)

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 71

fig(6) fig(7)

f

fig(8)

Step 108: Now again double click on TopperStudentProject on left pane & observe that after first test it created Instance with its instance id 210001 &210004 & instance state completed.

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 72

Now since we have completed our test & wanted to exit from enterprise manager , Click on ShutDown Tab & then LogOut.

www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 73