SlideShare une entreprise Scribd logo
1  sur  52
Télécharger pour lire hors ligne
Getting Started with Oracle SoA
Oracle SOA Working with Custom Faults Lab#9

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 Working with Custom Faults. Join our professional training
program and learn from experts.

History:
Version
0.1
0.1

Description Change
Initial Draft
Review#1

www.bispsolutions.com

Author
Shiva Kant Pandey
Amit Sharma

www.bisptrainigs.com

Publish Date
21st Aug 2012
29th Aug 2012

www.hyperionguru.com

Page 1
Contents
Contents....................................................................................................................................... 2
Working with Custom faults ......................................................................................................... 3
Step wise procedure on topper student project with fault handling (custom fault):.....................3
Motive of Switch Activity.............................................................................................................. 4

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 2
Working with Custom faults
Q)What are custom faults ?
A) Custom faults are those faults which is defined by developer for certain limitations .
Summary:
Aim of custom fault project is that to catch those faults which are defined by developer at the
time of service development so here in topper student project when someone input wrong
student marks i.e input marks of individual subject should not be smaller than zero & greater
than hundred , so this kind of restrictions are provided by developer so if wrong marks input
then it shows custom fault message that input marks is invalid .

Step wise procedure on topper student project with fault handling (custom
fault):
Step 1: Open ProcessStudent Project & under it open ProcessStudentProcess.bpel as shown
below

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

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 3
Step 3: Click on condition part to set if condition for switch activity

Motive of Switch Activity
Our motive is setting condition that if marks are smaller than zero or greater than hundred
then throw custom/business fault & also reply this fault as output else choose otherwise
condition if input marks are correct & keep all components inside this otherwise condition
Step 4: Click on Expression builder shown below :
www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 4
Step 5: Click on lang1 marks ---> insert into expression ---> Logical Function ----> smaller --->
insert into expression ---> 0 (zero) or Click on lang1 marks ---> insert into expression --->
Logical Function ----> greater ---> insert into expression ---> 100 (hundred) or Click on lang2
marks ---> insert into expression ---> Logical Function ----> smaller ---> insert into expression
---> 0 (zero) or Click on lang2 marks ---> insert into expression ---> Logical Function ---->
greater ---> insert into expression ---> 100 (hundred) or Click on lang3marks ---> insert into
expression ---> Logical Function ----> smaller ---> insert into expression ---> 0 (zero) or Click on
lang3 marks ---> insert into expression ---> Logical Function ----> greater ---> insert into
expression ---> 100 (hundred)
as shown below

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 5
Step 6: Click on Ok .

Step 7 : Drag & drop Assign Activity & Rename It as AssignCustomFault :

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 6
Step 8: Drag & drop Throw Activity
"This activity throws the fault data to the catch activity"

Step 9: Rename throw activity as ThrowInvalidMarksFault

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 7
Step 10: Double Click On Throw activity & Edit Throw activity , Click On Browse icon shown
below

Step 11: Observe that there is no fault message under Project WSDL Files in
ProcessStudentProcess.wsdl so first create fault message inside ProcessStudent wsdl file for
custom fault .

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 8
Step 12: Observe ProcessStudentProcess.wsdl in design mode that inside port type it has only
two process one is Input & other output but not containing Fault as its third process so create it
in source mode .

Step 13:Now edit this wsdl in source mode

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 9
Step 14: Edit PortType as shown below :
<wsdl:fault message="InvalidStudentMarksFaultMessage" name="Error"/>

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 10
Step 15: Edit Message Type Definition as shown below :
<wsdl:message name="InvalidStudentMarksFaultMessage">
<wsdl:part name="InvalidStudentMarksFault" element="err:Error"/>

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 11
Step16: Import Error.xsd from oramds , open resource palette ---> SOA-MDS-->dev mds conn
-->apps--->Error.xsd
to get schema location of error.xsd click once on it & use ctrl +shift+c then paste inside
schemalocation , delete all before apps & write oramds:/ before apps . then copy namespace
from error.xsd & paste here inside namespace .

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 12
Step 17: Register namespace of Error.xsd with prefix "err" .

xmlns:err="http://www.bispsolutions.com/training/soa/schema/Student"

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 13
Step 18: As completed editing wsdl click on design mode & observe fault process

Explore fault on clicking [+] sign & see that it contains InvalidStudentMarks faultMessage
associated with its part .

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 14
Step 19: Click on Imports & check imported xsd

Step 20: click on Schema mode to see included xsd .

Step 21: Open ProcessStudentProcess.bpel & Edit Throw activity again
www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 15
Step 22: Now observe that this time wsdl contains Invalid studentMarksfaultMessage click on
it & hit ok .

Step 23: Create Variable as shown below & click OK

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 16
Step 24: Check detail & hit OK .

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 17
Step 25: Check variables by clicking on

icon .

Step 26: Check that all QName is associated with its prefix , so observe here that
InvalidStudentMarksFaultVar does not contains its prefix so click on QName & edit variable , it
should be message type , click on Browse

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 18
Step 27: Click on that InvalidStudentMarksFaultMessage & click OK

Step 28: Again Check variables by clicking on

icon .

Step 29: Click on assign custom fault & start assigning fault data

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 19
Step 30: To assign faultCode click on expression Drag & Drop on faultCode as shown below

Step31: Write Expression i.e fault code as 'FMW-002'

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 20
Step 32: Similarly severity as 1

Step 33: Select Date Functions & under it select current-date-Time then insert
intoExpressionthen click ok

Step 34: Similarly Detail as 'INVALID MARKS SELLECTION'

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 21
Step 35: For CompositeName click Advanced functions ----> getCompositenName then

Step 36: For ComponentName click Advanced functions ----> getComponentName then
insert into Expression

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 22
Step 37: For CompositeInstanceId click Advanced functions ----> getCompositeInstanceId then
insert into Expression

Step 38: Observe all assigned values

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 23
Step 39: Drag & drop Reply Activity & click twice on it to edit reply as shown below:

Step 40: Edit Reply as shown below :
www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 24
Step 41: Click on compile icon to compile the bpel process

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 25
Step 42: Build successful

Step 43: Deploy project by clicking ProcessStudent to devsoa
www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 26
Note: Before Deployment Start Weblogic Admin Server as discussed in my previous document
Oracle Soa Part IV Doc.

Step 44: Click on Browser icon shown below:

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

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 27
Note : Here localhost is application server & 7001 is a port in which enterprise manager is
running.
Step 46 : Login using credentials
User Name :weblogic
Password : welcome1
click on login

Step 47: 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 28
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 on Processstudent twice

Step 48: Click on TEST & create instance

Step 49:Explore payload & select tree view

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 29
Step 50: Fill all blank spaces as shown below

Step 51: Click on Test Web Service

And get Response shown below:
Step 52: Now since input lang1 marks is 150 & so it displays custom error or
InvalidStudentMarks Error as shown below .Click on close .

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 30
Step 53 : Parse wsdl & again try with these inputs shown below :

Click on Test Web Service
Step54 : Observe response without error because this time all input lang marks are between
0 & 100.

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 31
Step 55: All instances are completed & instance 320002 is completed with custom fault &
instance 320003 is completed without errors .

NOTE: Now how we catch these faults through invoking service , next steps are concentrated
on this question in which calling service is TopperStudent Service .
Step 56: Open Topper Student Process . bpel click on Add catch all activity shown below

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 32
NOTE: Catch activity can catch only system faults where as catch all activity catches business
fault
Step 57: Click on source mode .Copy all activies of catch & paste inside catch all block in sorce
mode

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 33
Step 58: Copy catch as shown below

Step 59: Paste inside Catch all activity
www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 34
Step 60: Change into design mode & save by clicking save icon

Step 61: Drag & drop Scope Activity as shown below:
www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 35
Scope Activity : This activity consists of a collection of activities that can have their own
local variables , fault handlers, compensation handlers and so on . A scope activity is
analogous to a block { } in programming language .Each scope has a primary activity can be
complex structured activity that, with many nested activities within it to arbitrary depth. The
scope is shared by all the nested activities .
Step 62: Now drag & drop all components inside scope activity as shown below :

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 36
NOTE: Since we have made changes in ProcessStudentProcess.wsdl in ProcessStudentProject
hence also need changes in imported ProcessStudentProcess.wsdl in TopperStudent Project so
that catch activity catch this custom fault as remote fault in TopperStudentProject .
Step 63: Open ProcessStudentProcess.wsdl in TopperStudentProject by clicking on it &
observe in design mode that it does not have fault process .

Aim : Our aim is to copy the required content from 'M wsdl ' to 'N wsdl'
Where M= 'ProcessStudentProcess.wsdl' in ProcessStudent Project
&

N= ' 'ProcessStudentProcess.wsdl' in TopperStudentProject

Step 64: Copy imported Error.xsd from M.wsdl as shown below:

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 37
Step 65: Paste imported Error.xsd to N.wsdl as shown below:

Step 66:Copy registered namespace from M.wsdl as shown below:

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 38
Step 67: Paste registered namespace from N.wsdl as shown below:

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 39
Step 68: Copy MessageType from M.wsdl as shown below:

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 40
Step 69: Paste MessageType to N.wsdl as shown below:

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 41
Step 70:Copy PortType from M.wsdl as shown below:

Step 71: Paste PortType to N.wsdl & save all by clicking save icon

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 42
Step 72: Click N.wsdl in design mode & observe that now created Fault as process .

Step 73: Add Terminate activity to terminate catch process as shown below & save all .
www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 43
Step 74: Click on compile icon to compile the bpel process

Step 75: Compilation successful with o errors & o warnings .

Step 76 : Deploy project by clicking TopperStudentProject.

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

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

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

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

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

Step 79 : Login using credentials
User Name :weblogic
Password : welcome1
click on login

Step 80: 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 TopperStudentProject .

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 46
Step 81: Click on TEST & Create instance

Step 82: Input Student array size =2

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 47
Step 83: Scroll down page & Provide required input of a students

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 48
Step 84: Click on Test Web Service

And get Response shown below:
Step 85: Now we can see that catch activity catch the fault & replied to the client as
Faultdata Response but here catch activity cached it as remote fault thats why fault code is
FMW-0001 & detail of custom fault is displayed inside Detail as FMW-002 , <Detail>Invalid
marks </Detail> as shown below :

Step 86: Check flow trace

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 49
Fig (1)

www.bispsolutions.com

Fig(2)

www.bisptrainigs.com

www.hyperionguru.com

Page 50
Fig (3)

Fig (4)

Step 87: Observe instances & instance state is terminated because of terminate activity now
finally click on shutdown tab

Step 88: Shut down confirmation ,Click yes

Step 89: Successfully shut down the composite

www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 51
www.bispsolutions.com

www.bisptrainigs.com

www.hyperionguru.com

Page 52

Contenu connexe

Tendances

10 ways to bind multiple models on a view in mvc code project
10 ways to bind multiple models on a view in mvc   code project10 ways to bind multiple models on a view in mvc   code project
10 ways to bind multiple models on a view in mvc code projectAkshat Kumar
 
React 101 by Anatoliy Sieryi
React 101 by Anatoliy Sieryi React 101 by Anatoliy Sieryi
React 101 by Anatoliy Sieryi Binary Studio
 
Introduction to angular js for .net developers
Introduction to angular js  for .net developersIntroduction to angular js  for .net developers
Introduction to angular js for .net developersMohd Manzoor Ahmed
 

Tendances (6)

10 ways to bind multiple models on a view in mvc code project
10 ways to bind multiple models on a view in mvc   code project10 ways to bind multiple models on a view in mvc   code project
10 ways to bind multiple models on a view in mvc code project
 
React 101 by Anatoliy Sieryi
React 101 by Anatoliy Sieryi React 101 by Anatoliy Sieryi
React 101 by Anatoliy Sieryi
 
Angularjs Live Project
Angularjs Live ProjectAngularjs Live Project
Angularjs Live Project
 
Introduction to angular js for .net developers
Introduction to angular js  for .net developersIntroduction to angular js  for .net developers
Introduction to angular js for .net developers
 
Android how to hellowidget
Android how to hellowidgetAndroid how to hellowidget
Android how to hellowidget
 
Setting up an odi agent
Setting up an odi agentSetting up an odi agent
Setting up an odi agent
 

En vedette

Getting started-with-oracle-so a-iv
Getting started-with-oracle-so a-ivGetting started-with-oracle-so a-iv
Getting started-with-oracle-so a-ivAmit Sharma
 
Smart view for-planning-part-ii
Smart view for-planning-part-iiSmart view for-planning-part-ii
Smart view for-planning-part-iiAmit Sharma
 
Getting started-with-oracle-so a-10
Getting started-with-oracle-so a-10Getting started-with-oracle-so a-10
Getting started-with-oracle-so a-10Amit Sharma
 
Getting started-with-oracle-so a-ii
Getting started-with-oracle-so a-iiGetting started-with-oracle-so a-ii
Getting started-with-oracle-so a-iiAmit Sharma
 
Getting started-with-oracle-so a-vii
Getting started-with-oracle-so a-viiGetting started-with-oracle-so a-vii
Getting started-with-oracle-so a-viiAmit Sharma
 
Getting started-with-oracle-so a-i
Getting started-with-oracle-so a-iGetting started-with-oracle-so a-i
Getting started-with-oracle-so a-iAmit Sharma
 
Getting started-with-oracle-so a-iii
Getting started-with-oracle-so a-iiiGetting started-with-oracle-so a-iii
Getting started-with-oracle-so a-iiiAmit Sharma
 
Getting started-with-oracle-so a-vi
Getting started-with-oracle-so a-viGetting started-with-oracle-so a-vi
Getting started-with-oracle-so a-viAmit Sharma
 
Getting started-with-oracle-so a lab#12
Getting started-with-oracle-so a lab#12Getting started-with-oracle-so a lab#12
Getting started-with-oracle-so a lab#12Amit Sharma
 
Getting started-with-oracle-so a-v
Getting started-with-oracle-so a-vGetting started-with-oracle-so a-v
Getting started-with-oracle-so a-vAmit Sharma
 

En vedette (10)

Getting started-with-oracle-so a-iv
Getting started-with-oracle-so a-ivGetting started-with-oracle-so a-iv
Getting started-with-oracle-so a-iv
 
Smart view for-planning-part-ii
Smart view for-planning-part-iiSmart view for-planning-part-ii
Smart view for-planning-part-ii
 
Getting started-with-oracle-so a-10
Getting started-with-oracle-so a-10Getting started-with-oracle-so a-10
Getting started-with-oracle-so a-10
 
Getting started-with-oracle-so a-ii
Getting started-with-oracle-so a-iiGetting started-with-oracle-so a-ii
Getting started-with-oracle-so a-ii
 
Getting started-with-oracle-so a-vii
Getting started-with-oracle-so a-viiGetting started-with-oracle-so a-vii
Getting started-with-oracle-so a-vii
 
Getting started-with-oracle-so a-i
Getting started-with-oracle-so a-iGetting started-with-oracle-so a-i
Getting started-with-oracle-so a-i
 
Getting started-with-oracle-so a-iii
Getting started-with-oracle-so a-iiiGetting started-with-oracle-so a-iii
Getting started-with-oracle-so a-iii
 
Getting started-with-oracle-so a-vi
Getting started-with-oracle-so a-viGetting started-with-oracle-so a-vi
Getting started-with-oracle-so a-vi
 
Getting started-with-oracle-so a lab#12
Getting started-with-oracle-so a lab#12Getting started-with-oracle-so a lab#12
Getting started-with-oracle-so a lab#12
 
Getting started-with-oracle-so a-v
Getting started-with-oracle-so a-vGetting started-with-oracle-so a-v
Getting started-with-oracle-so a-v
 

Similaire à Getting Started with Oracle SOA Custom Faults

Getting started-with-oracle-so a-iv
Getting started-with-oracle-so a-ivGetting started-with-oracle-so a-iv
Getting started-with-oracle-so a-ivAmit Sharma
 
Sap business-object-universe-idt-lab-i
Sap business-object-universe-idt-lab-iSap business-object-universe-idt-lab-i
Sap business-object-universe-idt-lab-iAmit Sharma
 
Tang doanh thu quang cao di dong
Tang doanh thu quang cao di dongTang doanh thu quang cao di dong
Tang doanh thu quang cao di dongDuc Canh Tran
 
26 story slicing techniques for any scrum team
26 story slicing techniques for any scrum team26 story slicing techniques for any scrum team
26 story slicing techniques for any scrum teamagilebin
 
Prestashop Nivo slider-user-guide
Prestashop Nivo slider-user-guidePrestashop Nivo slider-user-guide
Prestashop Nivo slider-user-guidePrestashop Addon
 
Sales force certification-lab
Sales force certification-labSales force certification-lab
Sales force certification-labAmit Sharma
 
Getting Started with Visualforce
Getting Started with VisualforceGetting Started with Visualforce
Getting Started with VisualforceRati Sharma
 
Sales force certification-lab
Sales force certification-labSales force certification-lab
Sales force certification-labAmit Sharma
 
183203806 sales force-class-8
183203806 sales force-class-8183203806 sales force-class-8
183203806 sales force-class-8Amit Sharma
 
Creating Openbravo Workspace Widgets
Creating Openbravo Workspace WidgetsCreating Openbravo Workspace Widgets
Creating Openbravo Workspace WidgetsRob Goris
 
Developing RIA Web Applications with Oracle ADF.pdf
Developing RIA Web Applications with Oracle ADF.pdfDeveloping RIA Web Applications with Oracle ADF.pdf
Developing RIA Web Applications with Oracle ADF.pdfsheriframadan18
 
Sales force certification-lab-ii
Sales force certification-lab-iiSales force certification-lab-ii
Sales force certification-lab-iiAmit Sharma
 
DevSecCon SG 2018 Fabian Presentation Slides
DevSecCon SG 2018 Fabian Presentation SlidesDevSecCon SG 2018 Fabian Presentation Slides
DevSecCon SG 2018 Fabian Presentation SlidesFab L
 
Change password for weblogic users in obiee 11g
Change password for weblogic users in obiee 11gChange password for weblogic users in obiee 11g
Change password for weblogic users in obiee 11gRavi Kumar Lanke
 

Similaire à Getting Started with Oracle SOA Custom Faults (20)

Soa8
Soa8Soa8
Soa8
 
Getting started-with-oracle-so a-iv
Getting started-with-oracle-so a-ivGetting started-with-oracle-so a-iv
Getting started-with-oracle-so a-iv
 
Sap business-object-universe-idt-lab-i
Sap business-object-universe-idt-lab-iSap business-object-universe-idt-lab-i
Sap business-object-universe-idt-lab-i
 
Tang doanh thu quang cao di dong
Tang doanh thu quang cao di dongTang doanh thu quang cao di dong
Tang doanh thu quang cao di dong
 
Wordpress as a framework
Wordpress as a frameworkWordpress as a framework
Wordpress as a framework
 
26 story slicing techniques for any scrum team
26 story slicing techniques for any scrum team26 story slicing techniques for any scrum team
26 story slicing techniques for any scrum team
 
Prestashop Nivo slider-user-guide
Prestashop Nivo slider-user-guidePrestashop Nivo slider-user-guide
Prestashop Nivo slider-user-guide
 
Sales force certification-lab
Sales force certification-labSales force certification-lab
Sales force certification-lab
 
Getting Started with Visualforce
Getting Started with VisualforceGetting Started with Visualforce
Getting Started with Visualforce
 
CATS Approval.pdf
CATS Approval.pdfCATS Approval.pdf
CATS Approval.pdf
 
Sales force certification-lab
Sales force certification-labSales force certification-lab
Sales force certification-lab
 
Magento++
Magento++Magento++
Magento++
 
183203806 sales force-class-8
183203806 sales force-class-8183203806 sales force-class-8
183203806 sales force-class-8
 
Dojo1.0_Tutorials
Dojo1.0_TutorialsDojo1.0_Tutorials
Dojo1.0_Tutorials
 
Dojo1.0_Tutorials
Dojo1.0_TutorialsDojo1.0_Tutorials
Dojo1.0_Tutorials
 
Creating Openbravo Workspace Widgets
Creating Openbravo Workspace WidgetsCreating Openbravo Workspace Widgets
Creating Openbravo Workspace Widgets
 
Developing RIA Web Applications with Oracle ADF.pdf
Developing RIA Web Applications with Oracle ADF.pdfDeveloping RIA Web Applications with Oracle ADF.pdf
Developing RIA Web Applications with Oracle ADF.pdf
 
Sales force certification-lab-ii
Sales force certification-lab-iiSales force certification-lab-ii
Sales force certification-lab-ii
 
DevSecCon SG 2018 Fabian Presentation Slides
DevSecCon SG 2018 Fabian Presentation SlidesDevSecCon SG 2018 Fabian Presentation Slides
DevSecCon SG 2018 Fabian Presentation Slides
 
Change password for weblogic users in obiee 11g
Change password for weblogic users in obiee 11gChange password for weblogic users in obiee 11g
Change password for weblogic users in obiee 11g
 

Plus de Amit Sharma

Oracle enteprise pbcs drivers and assumptions
Oracle enteprise pbcs drivers and assumptionsOracle enteprise pbcs drivers and assumptions
Oracle enteprise pbcs drivers and assumptionsAmit Sharma
 
Oracle EPBCS Driver
Oracle EPBCS Driver Oracle EPBCS Driver
Oracle EPBCS Driver Amit Sharma
 
Oracle Sales Quotation Planning
Oracle Sales Quotation PlanningOracle Sales Quotation Planning
Oracle Sales Quotation PlanningAmit Sharma
 
Oracle strategic workforce planning cloud hcmswp converted
Oracle strategic workforce planning cloud hcmswp convertedOracle strategic workforce planning cloud hcmswp converted
Oracle strategic workforce planning cloud hcmswp convertedAmit Sharma
 
FDMEE script examples
FDMEE script examplesFDMEE script examples
FDMEE script examplesAmit Sharma
 
Oracle PBCS creating standard application
Oracle PBCS creating  standard applicationOracle PBCS creating  standard application
Oracle PBCS creating standard applicationAmit Sharma
 
Hfm rule custom consolidation
Hfm rule custom consolidationHfm rule custom consolidation
Hfm rule custom consolidationAmit Sharma
 
Hfm calculating RoA
Hfm calculating RoAHfm calculating RoA
Hfm calculating RoAAmit Sharma
 
Adding metadata using smartview
Adding metadata using smartviewAdding metadata using smartview
Adding metadata using smartviewAmit Sharma
 
Hyperion planning weekly distribution
Hyperion planning weekly distributionHyperion planning weekly distribution
Hyperion planning weekly distributionAmit Sharma
 
Hyperion planning scheduling data import
Hyperion planning scheduling data importHyperion planning scheduling data import
Hyperion planning scheduling data importAmit Sharma
 
Hyperion planning new features
Hyperion planning new featuresHyperion planning new features
Hyperion planning new featuresAmit Sharma
 
Microsoft dynamics crm videos
Microsoft dynamics crm videosMicrosoft dynamics crm videos
Microsoft dynamics crm videosAmit Sharma
 
Oracle apex-hands-on-guide lab#1
Oracle apex-hands-on-guide lab#1Oracle apex-hands-on-guide lab#1
Oracle apex-hands-on-guide lab#1Amit Sharma
 
Oracle apex hands on lab#2
Oracle apex hands on lab#2Oracle apex hands on lab#2
Oracle apex hands on lab#2Amit Sharma
 
Security and-data-access-document
Security and-data-access-documentSecurity and-data-access-document
Security and-data-access-documentAmit Sharma
 
Sales force managing-data
Sales force managing-dataSales force managing-data
Sales force managing-dataAmit Sharma
 
Salesforce interview-preparation-toolkit-formula-and-validation-rules-in-sale...
Salesforce interview-preparation-toolkit-formula-and-validation-rules-in-sale...Salesforce interview-preparation-toolkit-formula-and-validation-rules-in-sale...
Salesforce interview-preparation-toolkit-formula-and-validation-rules-in-sale...Amit Sharma
 
Sales force certification-lab-ii
Sales force certification-lab-iiSales force certification-lab-ii
Sales force certification-lab-iiAmit Sharma
 

Plus de Amit Sharma (20)

Oracle enteprise pbcs drivers and assumptions
Oracle enteprise pbcs drivers and assumptionsOracle enteprise pbcs drivers and assumptions
Oracle enteprise pbcs drivers and assumptions
 
Oracle EPBCS Driver
Oracle EPBCS Driver Oracle EPBCS Driver
Oracle EPBCS Driver
 
Oracle Sales Quotation Planning
Oracle Sales Quotation PlanningOracle Sales Quotation Planning
Oracle Sales Quotation Planning
 
Oracle strategic workforce planning cloud hcmswp converted
Oracle strategic workforce planning cloud hcmswp convertedOracle strategic workforce planning cloud hcmswp converted
Oracle strategic workforce planning cloud hcmswp converted
 
Basics of fdmee
Basics of fdmeeBasics of fdmee
Basics of fdmee
 
FDMEE script examples
FDMEE script examplesFDMEE script examples
FDMEE script examples
 
Oracle PBCS creating standard application
Oracle PBCS creating  standard applicationOracle PBCS creating  standard application
Oracle PBCS creating standard application
 
Hfm rule custom consolidation
Hfm rule custom consolidationHfm rule custom consolidation
Hfm rule custom consolidation
 
Hfm calculating RoA
Hfm calculating RoAHfm calculating RoA
Hfm calculating RoA
 
Adding metadata using smartview
Adding metadata using smartviewAdding metadata using smartview
Adding metadata using smartview
 
Hyperion planning weekly distribution
Hyperion planning weekly distributionHyperion planning weekly distribution
Hyperion planning weekly distribution
 
Hyperion planning scheduling data import
Hyperion planning scheduling data importHyperion planning scheduling data import
Hyperion planning scheduling data import
 
Hyperion planning new features
Hyperion planning new featuresHyperion planning new features
Hyperion planning new features
 
Microsoft dynamics crm videos
Microsoft dynamics crm videosMicrosoft dynamics crm videos
Microsoft dynamics crm videos
 
Oracle apex-hands-on-guide lab#1
Oracle apex-hands-on-guide lab#1Oracle apex-hands-on-guide lab#1
Oracle apex-hands-on-guide lab#1
 
Oracle apex hands on lab#2
Oracle apex hands on lab#2Oracle apex hands on lab#2
Oracle apex hands on lab#2
 
Security and-data-access-document
Security and-data-access-documentSecurity and-data-access-document
Security and-data-access-document
 
Sales force managing-data
Sales force managing-dataSales force managing-data
Sales force managing-data
 
Salesforce interview-preparation-toolkit-formula-and-validation-rules-in-sale...
Salesforce interview-preparation-toolkit-formula-and-validation-rules-in-sale...Salesforce interview-preparation-toolkit-formula-and-validation-rules-in-sale...
Salesforce interview-preparation-toolkit-formula-and-validation-rules-in-sale...
 
Sales force certification-lab-ii
Sales force certification-lab-iiSales force certification-lab-ii
Sales force certification-lab-ii
 

Dernier

4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptx4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptxmary850239
 
Expanded definition: technical and operational
Expanded definition: technical and operationalExpanded definition: technical and operational
Expanded definition: technical and operationalssuser3e220a
 
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptxBIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptxSayali Powar
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptxmary850239
 
Narcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfNarcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfPrerana Jadhav
 
Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1GloryAnnCastre1
 
Scientific Writing :Research Discourse
Scientific  Writing :Research  DiscourseScientific  Writing :Research  Discourse
Scientific Writing :Research DiscourseAnita GoswamiGiri
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfJemuel Francisco
 
week 1 cookery 8 fourth - quarter .pptx
week 1 cookery 8  fourth  -  quarter .pptxweek 1 cookery 8  fourth  -  quarter .pptx
week 1 cookery 8 fourth - quarter .pptxJonalynLegaspi2
 
Concurrency Control in Database Management system
Concurrency Control in Database Management systemConcurrency Control in Database Management system
Concurrency Control in Database Management systemChristalin Nelson
 
4.11.24 Mass Incarceration and the New Jim Crow.pptx
4.11.24 Mass Incarceration and the New Jim Crow.pptx4.11.24 Mass Incarceration and the New Jim Crow.pptx
4.11.24 Mass Incarceration and the New Jim Crow.pptxmary850239
 
Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...
Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...
Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...DhatriParmar
 
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxMan or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxDhatriParmar
 
Congestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentationCongestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentationdeepaannamalai16
 
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptxDecoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptxDhatriParmar
 
How to Make a Duplicate of Your Odoo 17 Database
How to Make a Duplicate of Your Odoo 17 DatabaseHow to Make a Duplicate of Your Odoo 17 Database
How to Make a Duplicate of Your Odoo 17 DatabaseCeline George
 
Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSMae Pangan
 
Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...
Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...
Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...DhatriParmar
 
ESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnv
ESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnvESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnv
ESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnvRicaMaeCastro1
 

Dernier (20)

4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptx4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptx
 
Expanded definition: technical and operational
Expanded definition: technical and operationalExpanded definition: technical and operational
Expanded definition: technical and operational
 
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptxBIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx
 
Narcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfNarcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdf
 
Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1
 
Scientific Writing :Research Discourse
Scientific  Writing :Research  DiscourseScientific  Writing :Research  Discourse
Scientific Writing :Research Discourse
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
 
Paradigm shift in nursing research by RS MEHTA
Paradigm shift in nursing research by RS MEHTAParadigm shift in nursing research by RS MEHTA
Paradigm shift in nursing research by RS MEHTA
 
week 1 cookery 8 fourth - quarter .pptx
week 1 cookery 8  fourth  -  quarter .pptxweek 1 cookery 8  fourth  -  quarter .pptx
week 1 cookery 8 fourth - quarter .pptx
 
Concurrency Control in Database Management system
Concurrency Control in Database Management systemConcurrency Control in Database Management system
Concurrency Control in Database Management system
 
4.11.24 Mass Incarceration and the New Jim Crow.pptx
4.11.24 Mass Incarceration and the New Jim Crow.pptx4.11.24 Mass Incarceration and the New Jim Crow.pptx
4.11.24 Mass Incarceration and the New Jim Crow.pptx
 
Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...
Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...
Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...
 
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxMan or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
 
Congestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentationCongestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentation
 
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptxDecoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
 
How to Make a Duplicate of Your Odoo 17 Database
How to Make a Duplicate of Your Odoo 17 DatabaseHow to Make a Duplicate of Your Odoo 17 Database
How to Make a Duplicate of Your Odoo 17 Database
 
Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHS
 
Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...
Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...
Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...
 
ESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnv
ESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnvESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnv
ESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnv
 

Getting Started with Oracle SOA Custom Faults

  • 1. Getting Started with Oracle SoA Oracle SOA Working with Custom Faults Lab#9 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 Working with Custom Faults. Join our professional training program and learn from experts. History: Version 0.1 0.1 Description Change Initial Draft Review#1 www.bispsolutions.com Author Shiva Kant Pandey Amit Sharma www.bisptrainigs.com Publish Date 21st Aug 2012 29th Aug 2012 www.hyperionguru.com Page 1
  • 2. Contents Contents....................................................................................................................................... 2 Working with Custom faults ......................................................................................................... 3 Step wise procedure on topper student project with fault handling (custom fault):.....................3 Motive of Switch Activity.............................................................................................................. 4 www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 2
  • 3. Working with Custom faults Q)What are custom faults ? A) Custom faults are those faults which is defined by developer for certain limitations . Summary: Aim of custom fault project is that to catch those faults which are defined by developer at the time of service development so here in topper student project when someone input wrong student marks i.e input marks of individual subject should not be smaller than zero & greater than hundred , so this kind of restrictions are provided by developer so if wrong marks input then it shows custom fault message that input marks is invalid . Step wise procedure on topper student project with fault handling (custom fault): Step 1: Open ProcessStudent Project & under it open ProcessStudentProcess.bpel as shown below Step 2: In design mode Drag & Drop Switch Activity so that bpel can set condition www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 3
  • 4. Step 3: Click on condition part to set if condition for switch activity Motive of Switch Activity Our motive is setting condition that if marks are smaller than zero or greater than hundred then throw custom/business fault & also reply this fault as output else choose otherwise condition if input marks are correct & keep all components inside this otherwise condition Step 4: Click on Expression builder shown below : www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 4
  • 5. Step 5: Click on lang1 marks ---> insert into expression ---> Logical Function ----> smaller ---> insert into expression ---> 0 (zero) or Click on lang1 marks ---> insert into expression ---> Logical Function ----> greater ---> insert into expression ---> 100 (hundred) or Click on lang2 marks ---> insert into expression ---> Logical Function ----> smaller ---> insert into expression ---> 0 (zero) or Click on lang2 marks ---> insert into expression ---> Logical Function ----> greater ---> insert into expression ---> 100 (hundred) or Click on lang3marks ---> insert into expression ---> Logical Function ----> smaller ---> insert into expression ---> 0 (zero) or Click on lang3 marks ---> insert into expression ---> Logical Function ----> greater ---> insert into expression ---> 100 (hundred) as shown below www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 5
  • 6. Step 6: Click on Ok . Step 7 : Drag & drop Assign Activity & Rename It as AssignCustomFault : www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 6
  • 7. Step 8: Drag & drop Throw Activity "This activity throws the fault data to the catch activity" Step 9: Rename throw activity as ThrowInvalidMarksFault www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 7
  • 8. Step 10: Double Click On Throw activity & Edit Throw activity , Click On Browse icon shown below Step 11: Observe that there is no fault message under Project WSDL Files in ProcessStudentProcess.wsdl so first create fault message inside ProcessStudent wsdl file for custom fault . www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 8
  • 9. Step 12: Observe ProcessStudentProcess.wsdl in design mode that inside port type it has only two process one is Input & other output but not containing Fault as its third process so create it in source mode . Step 13:Now edit this wsdl in source mode www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 9
  • 10. Step 14: Edit PortType as shown below : <wsdl:fault message="InvalidStudentMarksFaultMessage" name="Error"/> www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 10
  • 11. Step 15: Edit Message Type Definition as shown below : <wsdl:message name="InvalidStudentMarksFaultMessage"> <wsdl:part name="InvalidStudentMarksFault" element="err:Error"/> www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 11
  • 12. Step16: Import Error.xsd from oramds , open resource palette ---> SOA-MDS-->dev mds conn -->apps--->Error.xsd to get schema location of error.xsd click once on it & use ctrl +shift+c then paste inside schemalocation , delete all before apps & write oramds:/ before apps . then copy namespace from error.xsd & paste here inside namespace . www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 12
  • 13. Step 17: Register namespace of Error.xsd with prefix "err" . xmlns:err="http://www.bispsolutions.com/training/soa/schema/Student" www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 13
  • 14. Step 18: As completed editing wsdl click on design mode & observe fault process Explore fault on clicking [+] sign & see that it contains InvalidStudentMarks faultMessage associated with its part . www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 14
  • 15. Step 19: Click on Imports & check imported xsd Step 20: click on Schema mode to see included xsd . Step 21: Open ProcessStudentProcess.bpel & Edit Throw activity again www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 15
  • 16. Step 22: Now observe that this time wsdl contains Invalid studentMarksfaultMessage click on it & hit ok . Step 23: Create Variable as shown below & click OK www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 16
  • 17. Step 24: Check detail & hit OK . www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 17
  • 18. Step 25: Check variables by clicking on icon . Step 26: Check that all QName is associated with its prefix , so observe here that InvalidStudentMarksFaultVar does not contains its prefix so click on QName & edit variable , it should be message type , click on Browse www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 18
  • 19. Step 27: Click on that InvalidStudentMarksFaultMessage & click OK Step 28: Again Check variables by clicking on icon . Step 29: Click on assign custom fault & start assigning fault data www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 19
  • 20. Step 30: To assign faultCode click on expression Drag & Drop on faultCode as shown below Step31: Write Expression i.e fault code as 'FMW-002' www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 20
  • 21. Step 32: Similarly severity as 1 Step 33: Select Date Functions & under it select current-date-Time then insert intoExpressionthen click ok Step 34: Similarly Detail as 'INVALID MARKS SELLECTION' www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 21
  • 22. Step 35: For CompositeName click Advanced functions ----> getCompositenName then Step 36: For ComponentName click Advanced functions ----> getComponentName then insert into Expression www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 22
  • 23. Step 37: For CompositeInstanceId click Advanced functions ----> getCompositeInstanceId then insert into Expression Step 38: Observe all assigned values www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 23
  • 24. Step 39: Drag & drop Reply Activity & click twice on it to edit reply as shown below: Step 40: Edit Reply as shown below : www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 24
  • 25. Step 41: Click on compile icon to compile the bpel process www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 25
  • 26. Step 42: Build successful Step 43: Deploy project by clicking ProcessStudent to devsoa www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 26
  • 27. Note: Before Deployment Start Weblogic Admin Server as discussed in my previous document Oracle Soa Part IV Doc. Step 44: Click on Browser icon shown below: Step 45: Start your enterprise manager by writing url http: //localhost:7001/em/ www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 27
  • 28. Note : Here localhost is application server & 7001 is a port in which enterprise manager is running. Step 46 : Login using credentials User Name :weblogic Password : welcome1 click on login Step 47: 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 28
  • 29. 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 on Processstudent twice Step 48: Click on TEST & create instance Step 49:Explore payload & select tree view www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 29
  • 30. Step 50: Fill all blank spaces as shown below Step 51: Click on Test Web Service And get Response shown below: Step 52: Now since input lang1 marks is 150 & so it displays custom error or InvalidStudentMarks Error as shown below .Click on close . www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 30
  • 31. Step 53 : Parse wsdl & again try with these inputs shown below : Click on Test Web Service Step54 : Observe response without error because this time all input lang marks are between 0 & 100. www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 31
  • 32. Step 55: All instances are completed & instance 320002 is completed with custom fault & instance 320003 is completed without errors . NOTE: Now how we catch these faults through invoking service , next steps are concentrated on this question in which calling service is TopperStudent Service . Step 56: Open Topper Student Process . bpel click on Add catch all activity shown below www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 32
  • 33. NOTE: Catch activity can catch only system faults where as catch all activity catches business fault Step 57: Click on source mode .Copy all activies of catch & paste inside catch all block in sorce mode www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 33
  • 34. Step 58: Copy catch as shown below Step 59: Paste inside Catch all activity www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 34
  • 35. Step 60: Change into design mode & save by clicking save icon Step 61: Drag & drop Scope Activity as shown below: www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 35
  • 36. Scope Activity : This activity consists of a collection of activities that can have their own local variables , fault handlers, compensation handlers and so on . A scope activity is analogous to a block { } in programming language .Each scope has a primary activity can be complex structured activity that, with many nested activities within it to arbitrary depth. The scope is shared by all the nested activities . Step 62: Now drag & drop all components inside scope activity as shown below : www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 36
  • 37. NOTE: Since we have made changes in ProcessStudentProcess.wsdl in ProcessStudentProject hence also need changes in imported ProcessStudentProcess.wsdl in TopperStudent Project so that catch activity catch this custom fault as remote fault in TopperStudentProject . Step 63: Open ProcessStudentProcess.wsdl in TopperStudentProject by clicking on it & observe in design mode that it does not have fault process . Aim : Our aim is to copy the required content from 'M wsdl ' to 'N wsdl' Where M= 'ProcessStudentProcess.wsdl' in ProcessStudent Project & N= ' 'ProcessStudentProcess.wsdl' in TopperStudentProject Step 64: Copy imported Error.xsd from M.wsdl as shown below: www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 37
  • 38. Step 65: Paste imported Error.xsd to N.wsdl as shown below: Step 66:Copy registered namespace from M.wsdl as shown below: www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 38
  • 39. Step 67: Paste registered namespace from N.wsdl as shown below: www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 39
  • 40. Step 68: Copy MessageType from M.wsdl as shown below: www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 40
  • 41. Step 69: Paste MessageType to N.wsdl as shown below: www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 41
  • 42. Step 70:Copy PortType from M.wsdl as shown below: Step 71: Paste PortType to N.wsdl & save all by clicking save icon www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 42
  • 43. Step 72: Click N.wsdl in design mode & observe that now created Fault as process . Step 73: Add Terminate activity to terminate catch process as shown below & save all . www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 43
  • 44. Step 74: Click on compile icon to compile the bpel process Step 75: Compilation successful with o errors & o warnings . Step 76 : Deploy project by clicking TopperStudentProject. www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 44
  • 45. Deployment Finished Note: Before Deployment Start Weblogic Admin Server as discussed in my previous document Oracle Soa Part IV Doc Step 77 : Click on Browser icon shown below: Step 78: Start your enterprise manager by writing url http: //localhost:7001/em/ www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 45
  • 46. Note : Here localhost is application server & 7001 is a port in which enterprise manager is running. Step 79 : Login using credentials User Name :weblogic Password : welcome1 click on login Step 80: 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 TopperStudentProject . www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 46
  • 47. Step 81: Click on TEST & Create instance Step 82: Input Student array size =2 www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 47
  • 48. Step 83: Scroll down page & Provide required input of a students www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 48
  • 49. Step 84: Click on Test Web Service And get Response shown below: Step 85: Now we can see that catch activity catch the fault & replied to the client as Faultdata Response but here catch activity cached it as remote fault thats why fault code is FMW-0001 & detail of custom fault is displayed inside Detail as FMW-002 , <Detail>Invalid marks </Detail> as shown below : Step 86: Check flow trace www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 49
  • 51. Fig (3) Fig (4) Step 87: Observe instances & instance state is terminated because of terminate activity now finally click on shutdown tab Step 88: Shut down confirmation ,Click yes Step 89: Successfully shut down the composite www.bispsolutions.com www.bisptrainigs.com www.hyperionguru.com Page 51