What is the best way for implementing dynamic business rules ? for example - depending on the credit rating of a customer, different code logic needs to be executed, maybe even display different views/pages.
Instead of hard-coding these rules in application logic within ADF and defining navigation outcome, wouldn't it be better to utilize Oracle BRE and define the Rules there ? Then invoke the BRE rules from ADF and based on the output of Oracle BRE follow a code path/navigation.
If this is acceptable, then the next question would be - what is the best way to implement this. Two options
Option 1. Define the BRE decision functions with ADF BC Facts and then use Rules SDK to invoke the dictionary->decision function
or
Option 2. Define a SOA composite with Rules component and XML facts and invoke the composite from ADF.
Option 1 would seem efficient from execution perspective as we would avoid the SOA layer, but has two disadvantages -
1. Packaging the ADF application alongwith the .mar file and do application deployment as a ear would be a challenge. ADF recommends to deploy the ViewController project instead of deploying the Application.
2. SOA Composer cannot be used to change rules dynamically at runtime without getting back to changing the .rules file.
Any recommendations ? Anyone used Oracle BRE with ADF ?
Thanks,
Tapash