Business rule engine [BRE]
- A non – technical person can also change the business logic by wing SOA computer business rules we can define 2 ways
1. Ruleset [if]
2. Decision table [switch]
Tabs:
- Facts
- Functions
- Globals O.V’s (list of values) ex: 10, 20, 30, 40 -----
- Bucket set
- Links O.V’s (range of values) ex: 0-35, 35-60-----
- Decision functions ex: A-Z, A-F ----
- Ruleset
- By using BRE we can configure various business logics
- I can even configure their business logics/rules in source code it will work very well, but if there is any change in the business logic in the future I will have to go back to source code, make changes completely deploy it again
- This is the process I have to do it whenever there is a change in the business logic
- Whereas by using BRE I don’t need to make changes in the source code, that is the biggest advantage
HUMAN TASK
Whenever a human interaction is required then a human task is required
Tabs:
- General
- Data
- Assignment
- Presentation
- Deadlines
- Notification
- Access
- Events
Remote – Fault
Fault – bindings.xml:
< ? xml version = “1.0” en ----?>
<fault policy Bindings version = “2.0.1”
Xmlns =”--------“
Xmlns =”---------“>
<composite fault policy = “handle fault”/>
</fault policyBindings>
Fault- policies.xml:
<? Xml version = “1.0”------?>
<fault policies xmlns = “------“>
Xmlns =” ---------- --------------“
Xmlns : xsi = “------------------“>
< Conditions>
<fault name xmlns:bpelx =”http:// schemas.oracle.cone/bped/
Extension” name = “bplex : remote fault”>
<condition>
<action ref = “ora-retry”/>
</condition>
</fault name>
</condition>
<Actions>
<Action id =”ora-retry”>
<Retry>
<retry count> 4</ retry count>
<retry interval> 2</retry interval>
<Exponential back off/>
<retry failure action ref = “ora-rethrow”/>
</retry>
</Action>
<Action id = “ora-rethrow”/>
<rethrow fault/>
<Action>
<Actions>
</fault policy>
</fault policies>
<retry failure ref = “ora_ws”/
</retry>
</Action>
<Action id = “ord_ws”>
<invokews uri = “concrete WSDL”
CASE 2
---> no need to take the catch, email, terminate activities
Concrete WSDL: (remote fault handle)
Go to next case 2
Inclined to build a profession as Oracle SOA Developer?
Then here is the blog post on Oracle SOA Training Online.
Case 1:
Catch:
Namespace URI:
http://schema.oracle.com/bpel/extension
Local part:
Remote fault table from system faults
A2
Output Set fault as a string ():
Email activity 1:
From account: default
To : ramesh - @gamil.com [this person will give response]
Cc : shyam - @gamil.com [this person will not give response]
Bcc :
Replay to : __
Subject : remote fault
Body : web server is down (or) somebody changed WSDL and replayed
Error message is : get default as string ():
Case 2:
Create Dvm table:
Right-click on project name à new transformations
(Dvm)
Email 2:
To : <% dvm: lookup value(“email notifications.dvm”, “name”, “to”, “value”,” NA”)%>
cc: <% dvm: lookup value(“email notifications.dvm”, “name”, “cc”, “value”, “NA”)%>
Subject: remote fault
Body: “same as above email 1”
For In-depth knowledge on Oracle SOA, click on below
- Oracle SOA ATA (Application Integration architecture)
- How to work with FTP(File transfer protocol) in Oracle SOA
- Oracle SOA Interview Questions & Answers
- Oracle SOA Admin Interview Questions
- Oracle SOA Tutorials