Problem in mapping Task payload parameters to Oracle Business Rules facts

Hi all,
We are using complex types from our project XSDs inside the Human Task payload. We intend to use these Human Task payload parameters to build routing rules using the Oracle Business Rules interface. Our observation is that when the complexity of these complex types increase, the business rules editor does not show these as facts that can be used in formulating rules.
Has anybody faced such a problem before. Any help is appreciated.
We are using the following link to add routing rules –
http://docs.oracle.com/cd/E25054_01/dev.1111/e10224/bp_decision.htm
Version details :
ADF Business Components     11.1.1.60.13
Java(TM) Platform     1.6.0_29
Oracle IDE     11.1.1.5.37.60.13
SOA Composite Editor     11.1.1.5.0.01.74
Thanks,
Yamini.

Problem solved. There was an element in the xml schema that had nillable = true. Because of this the XML Fact for that element would no longer be available in the BPEL Process. Removing the nillable and generating the XML Facts again solved the missing variable problem.

Similar Messages

  • Oracle Business Rules :  File Type Rules Repository Creation Problem

    Hi Gurus,
    I am trying to create File Type Rules Repository(SOA Suite 10.1.3.3).
    As per the documentation:user Guide
    Oracle Business Rules supplies a blank file repository that does not contain a dictionary. This file repository is named "emptyFileRepository" and is located in the
    $ORACLE_HOME/rules/lib directory.To setup a new file repository, copy and rename the emptyFileRepository file.
    Then, provide this file name and location in the Repository Connect page
    I did the same thing.I copied the emptyFileRepository and renamed the file.After giving the file location and click on the Create button it is throwing the error "Please provide a valid directory path." Please Help me to fix this.
    The same kind of the question was posted on the same forum which was un answered.Please guide me to fix the problem.I googled a lot but no help found.
    please route me to proper source.
    Thanks in advance..
    Regards,
    ravi

    I was able to create repository for business rules few weeks ago perhaps I was using an old version of the firefox, now I upgraded to firefox 3.5.7 and get the same error. IE 7 hangs, did you get a solution yet?
    I am planning to downgrade my firefox and give it a try. Please update if you find a fix.

  • Oracle Business Rule Exception during deployment

    Hi Experts,
    We implemented the OBR(Oracle Business Rules) within CEP and I always encounter a strange behavior. For some reason, I always encounter this error:
    Apr 8, 2011 3:15:10 PM oracle.rules.rl.RuleSession logIt
    SEVERE: symbol 'oracle.rules.rl.xpath.Step' is undefined
    at line 1 column 12 in main
    Apr 8, 2011 3:15:10 PM oracle.rules.rl.RuleSession logIt
    SEVERE: UndefinedException: symbol 'oracle.rules.rl.xpath.Step' is undefined
    at line 1 column 12 in main
    Apr 8, 2011 3:15:10 PM oracle.rules.rl.RuleSession logIt
    SEVERE: symbol 'oracle.rules.rl.xpath.Step' is undefined
    at line 1 column 12 in main
    Apr 8, 2011 3:15:10 PM oracle.rules.rl.RuleSession logIt
    SEVERE: UndefinedException: symbol 'oracle.rules.rl.xpath.Step' is undefined
    at line 1 column 12 in main
    <Apr 8, 2011 3:15:10 PM PHT> <Error> <com.nsn.cvo.ingestion.callscenario.bean.OBRExecuteBean> <BEA-000000> <oracle.rules.sdk2.exception.SDKException: RUL-05187: error getting a rule session from decision point rule session pool.
    >
    After restarting CEP, OBR is running perfectly. I am not sure how to resolve this issue and need your guidance on how to prevent this from happening. My java source source code is below: The initializeDecisionEngine is called only once. My input to OBR is a java.util.Map(this is a requirement and can't do anything about it).
    private String rulesPath;
    private RuleDictionary ruleDictionary;
    private DecisionPointInstance decisionPointInstance;
    private String decisionFunctionName = "decisionFunctionName";
    private void initializeDecisionEngine() {
              try {
                   if (rulesPath == null) {
                        return;
                   if (decisionPointInstance == null) {
                        ruleDictionary = this.loadRuleDictionary(rulesPath);
                        DecisionPoint decisionPoint = new DecisionPointBuilder().with(
                                  decisionFunctionName).with(ruleDictionary).build();
                        decisionPointInstance = decisionPoint.getInstance();
                        System.out.println("INIT() OUT");
              } catch (SDKException e) {
                   // TODO Auto-generated catch block
                   e.printStackTrace();
    private RuleDictionary loadRuleDictionary(String path) {
              System.out.println("loading dictionary from path: " + path);
              RuleDictionary dict = null;
              Reader reader = null;
              try {
                   reader = new FileReader(new File(path));
    dict = RuleDictionary.readDictionary(reader, new DecisionPointDictionaryFinder(null));
                   List<SDKWarning> warnings = new ArrayList<SDKWarning>();
                   dict.update(warnings);
                   if (warnings.size() > 0) {
                        log.error("Validation warnings: " + warnings);
              } catch (SDKException e) {
                   log.error(e);
              } catch (FileNotFoundException e) {
                   log.error(e);
              } catch (IOException e) {
              } finally {
                   if (reader != null) {
                        try {
                             reader.close();
                        } catch (IOException ioe) {
                             ioe.printStackTrace();
              return dict;
    private executeOBRRule(){
    Map<String, String> mapEntry = new HashMap<String, String>();
    mapEntry.put("column1", "value1");
    mapEntry.put("column2", "value2");
    mapEntry.put("column3", "value3");
    if (decisionPointInstance != null) {
                   decisionPointInstance.clearInputs();
                   // decisionPointInstance.
                   List<Object> list = new ArrayList<Object>();
                   list.add(mapEntry); <--- Adding the map to a list since it is the only allowed input for OBR, or is there any other way other than list? -->
                   decisionPointInstance.setInputs(list);
    Object obj = decisionPointInstance.invoke();  <<<<<< this is where the exception is raised.
    My question is that why is the exception is being raised and sometimes it is not. My only resolution is to restart CEP server. Am I missing something? My obr rule file is ok since it does not display any error during compilation. If you can guide me to the correct path, I will really appreciate it.
    Regards,
    Russel

    Is this problem resolved?
    If so it would be greatly helpful if you could provide the solution.
    Regards,
    Nigel.

  • Oracle Rules Manager vs Oracle Business Rules

    Hi
    Can someone explain the difference between Oracle Rules Manager and Oracle Business Rules.
    Is Oracle Promoting both the products?
    What I understand is that Oracle Rules Manager comes a part of the Oracle Database 10g R2 (and 11g) and Oracle Business Rules is a part of the SOA suite.
    Is there any difference in the positioning of both these products?
    Our client is evaluating various Rules engines in the market and we want to make sure that we choose the correct product.
    Thanks, Srini

    Igor S. wrote:
    He solves the same problem with rules and without. My question was what would be better? Why would you chose one over the other. I prefer rules that is easy to state, easy to read, and easy to implement. Clear text rules in Prolog being a firm favourite. :-)
    Using a rules engine, with a fairly complex API, in order to define rules? I would want very sound and very robust justification for that.
    Taking this EMP table example. If there is a single AddEmp() PL/SQL procedure interface for adding employees, it is simple matter to see what it does, how it does that, and test and debug that. The only knowledge needed is the ability to read and understand the source code. The same cannot be said of rules engines.
    As for the issue of updating AddEmp() with new rules. Edition redefinition takes care of versioning database objects. And in a far more controlled fashion than dealing with a rules engine that is dynamically update now! while the database is in use - and you have no real idea or real control over when exactly now! was.

  • Syntax errors in Oracle Business Rules carrental ruleset

    Hi,
    I'm using Oracle Business Rules Rule Author on Windows, version 10.1.3.0.0.
    I'm working with the OTN carrental sample. If i load the supplied file-based repository CarRepository from the %HOWTO_HOME%/dict directory, navigate to the RL tab -> Generate RL-code and select the 'Check RL-Syntax' button I always get the same error message:
    Error:'5}' is undefined at line ... column ... in [DM or vehicleRent]
    If I navigate to 'Test Rulesets' i get the same error, no matter what testfunction i use with the vehicleRent ruleset.
    When i test the sample with the supplied java code i don't get any errors.
    However, if I follow the steps in chapter 2 (javaFact) or 4 (XMLFact) of the Business Rules user guide and setup everything from scratch for a filebased repository i get the same error at runtime.
    I based the filebased repository on the supplied emptyrepository file.
    Seems to make no difference whether I use a filebased or a webdav repository.
    any help on this would be appreciated.
    Rob
    Message was edited by:
    [email protected]

    There are two problems here. First, there is a bug that causes this error string to be displayed incorrectly when using the RuleAuthor in any browser language other than English. If you change the browser language to English, you should see:
    <p>
    A syntax error is found. <br>
    Error:'carrental.Driver' is undefined at line 4 column 14 in DM
    <p>
    The cause of this problem is that carrental.Driver class is not in the classpath for Rule Author. This isn't covered in the how-to. See section 3.10 in the Oracle® Business Rules User’s Guide (B15986-01) (available from here).
    <p>
    From this doc:
    <p>
    Create a rule set you want to test. If the data model includes any Java classes, the
    Java classes must be included in the OC4J classpath. The easiest way to do this is
    to put the JAR files in the following directory, then restart OC4J:
    $ORACLE_HOME/j2ee/home/applications/ruleauthor/lib
    <p>
    or add it as a shared library using EM (specific instructions follow in the doc) and then add that shared library to RuleAuthor.
    Message was edited by:
    philvarner

  • Oracle Business Rules Custom Functions

    Hi,
    I have an input fact with attributes A,B,C & D and an output fact with E, C & D. (C & D attributes are common in both facts)
    Whenever the rule matches, we are asserting new output fact by assigning a constant value to attribute 'E' and also the transactional values to C & D using input fact's C & D attributes.
    This way, we are making sure to return the response with matched transactional values.
    But we would like to do this by writing a custom function so that user need not assign this mapping manually whenever any new rule creates. User just assigns the constant value to attribute E but values to C & D attributes should be assigned automatically.
    Please let me know your suggestions on this.
    Regards,
    KK

    Hi Subha,
    Please find the answers inline :
    1. In Oracle Business Rules, can one rule invoke another rule?
    -- > Yes, once a rule gets executed, it might create more facts, that in turn fire another rule. It all runs around the inout/output facts.
    2. Can we make two rule sets dependent on each other?
    -- > Yes
    3. Can we return data of types String, Boolean, Integer, Double from a rule execution?
    -- > Yes, you can use java code with functions.
    4. Can we build complex logical AND, OR assertions in Oracle rules?
    -- > Java programming language is needed for this..
    5. Can we use custom business objects (not Java data types) within a rule?
    -- > Dont think so
    Regards
    Anirudh Pucha

  • Oracle Business Rules Rule Author

    Hi,
    Iam implementing Oracle Business Rules, while configuring rules with Rule Author, a problem is faced, a variable data which is set in one rule's action is not available to next rule's condition.
    i.e a variable set in one rule can not be used in other rule as condition.
    Is there any option to make it work,
    thanks & regards.
    anil

    I took the CarRental Java model and exposed two more attributes namely numPreConvictions and ableToDrive. Then I fed it a fact where the driver has 4 convictions and ableToDrive=true. When I ran it in the rule author tester it ran out of memory indicating it may have gone into a loop. I must be missing something here. The test RL function is below the rule set code.
    In my other test from outside the rule author it just won't fire the second rule (no out of memory issue). For that one I have a metalink SR 6560804.992 waiting for response. I attached some code to that one too. I got that one to work via Java Beans property change support.
    1. ruleset reAssertTest
    2.
    3. {
    4.
    5. rule checkConvictions
    6. {
    7. priority = 0;
    8. if
    9. (
    10. (
    11. fact carrental.Driver v0_Driver && (
    12. (v0_Driver.numPreConvictions > 2)))
    13. )
    14.
    15. {
    16. v0_Driver.ableToDrive = false;
    17. DM.println(v0_Driver.name+" has more than 2 convictions. set able to drive=false and re-assert ");
    18. assert(v0_Driver);
    19. }
    20. } //end rule checkConvictions;
    21.
    22. rule cannotDrive
    23. {
    24. priority = 0;
    25. if
    26. (
    27. (
    28. fact carrental.Driver v0_Driver && (
    29. (v0_Driver.ableToDrive == false)))
    30. )
    31.
    32. {
    33. DM.println(v0_Driver.name+" cannot drive");
    34. }
    35. } //end rule cannotDrive;
    36. }// end ruleset reAssertTest
    -- reAssertTest ---
    java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat( "MM/dd/yyyy" );
    assert (new carrental.Driver( "d111", "Dave", 50, "sports", "full",
    sdf.parse ("10/1/1969"), 4, 4, true ));
    pushRuleset ("reAssertTest");
    run();
    ---------------

  • Oracle Rule Author(Oracle Business Rules)

    Hi,
    Iam implementing Oracle Business Rules, while configuring rules with Rule Author, a problem is faced, a variable data which is set in one rule's action is not available to next rule's condition.
    i.e a variable set in one rule can not be used in other rule as condition.
    Is there any option to make it work,
    thanks & regards.
    anil

    I think you would get better response on the question if you post the same question to the SOA Suite forum (SOA Suite
    A

  • Not able to access the web based RuleAuthor of Oracle Business Rules

    Hi ,
    I have Installed Oracle SOA Suite (11g) version from here .
    I have followed the steps in the Installation guide .
    I was able to install it successfully. At present I need to Work on the oracle Business Rules.
    As per the documentation I have tried to access the Rules author at the following URL
    http://localhost:7001/ruleauthor/
    But I was not able to access it.
    Please let me know if I need to install any other component to access Rule Author. please let me know if you need any more information.
    Thanks in advance for your time,
    Raja Kumar

    Back up all data.
    Launch the Keychain Access application in any of the following ways:
    ☞ Enter the first few letters of its name into a Spotlight search. Select it in the results (it should be at the top.)
    ☞ In the Finder, select Go ▹ Utilities from the menu bar, or press the key combination shift-command-U. The application is in the folder that opens.
    ☞ Open LaunchPad. Click Utilities, then Keychain Access in the icon grid.
    Select the login keychain from the list on the left side of the Keychain Access window. If your default keychain has a different name, select that.
    If the lock icon in the top left corner of the window shows that the keychain is locked, click to unlock it. You'll be prompted for the keychain password, which is the same as your login password, unless you've changed it.
    Right-click or control-click the login entry in the list. From the menu that pops up, select Change Settings for Keychain "login". In the sheet that opens, uncheck both boxes, if not already unchecked.
    From the menu bar, select
    Keychain Access ▹ Preferences ▹ First Aid
    If the box marked Keep login keychain unlocked is not checked, check it.
    Select
    Keychain Access ▹ Keychain First Aid
    from the menu bar and repair the keychain. Quit Keychain Access.

  • How to use  create & ruleExecutionSet in oracle business rules

    I am trying to run the demo example of oracle business rule (car demo) using
    ruleExecutionSet.
    What are the changes thet i have to made in example in order to create & use the ruleExecutionSet to run the car demo .
    with regards
    saleem khan

    you are in the Oracle Forms Forum and your question is related to JDeveloper and Crystal Reports, you think those two are linked to Oracle Forms in anyway??
    Please post your questions in the appropriate Forum.
    Tony

  • Oracle Business Rules with Fusion Release 4

    Hi
    I am wondering if we can use the Oracle Business Rules product with the Oracle Fusion Compensation APplication Release 4.
    Thanks
    Srinivasa Sunchu

    Srinivasa,
    There are relevant chapters in the Oracle Fusion Middleware User's Guide for Oracle Business Rules. There is sample code interspersed in the chapters.
    7 Working with Rules SDK Decision Point API
    http://fmwdocs.us.oracle.com/vol/doclibs/fusionapps/review/E36909_01/user.1111/e10228/decision_point.htm#ASRUG455
    10 Working with Oracle Business Rules and ADF Business Components
    http://fmwdocs.us.oracle.com/vol/doclibs/fusionapps/review/E36909_01/user.1111/e10228/adfbc.htm#ASRUG378
    I looked through the source code of one of our products that uses the Rules SDK to see if there is an easy-to-extract example, but it's far beyond the scope of a forum post. We'll probably create one or more blog posts that dive deeper into this topic, but I cannot promise a date for that. Keep an eye on http://blogs.oracle.com/fadevrel please.

  • How to add Exception handling in Oracle Business rules Function

    Hello,
    We use to have good number of business rules in our application. So we need to have some functions in BR Composite.
    Can some one let me know how to handle exception in Oracle business rules exception( Regular try catch will not compile)
    is there any way please let me know.
    Edited by: Network22 on Mar 25, 2013 10:21 AM

    Why aren't you using por_custom_pkg.custom_validate_req_line to add extra validations.
    Ensure that profile POR: Enable Requisition Line Customization is set to Yes if you were to use po_custom_pkg for Requisition line validations.
    OAF calls por_custom_pkg at various points depending upon the values in Profile Options:-
    POR: Enable Req Distribution Customization
    POR: Enable Req Header Customization
    POR: Enable Requisition Line Customization
    Thanks,
    Anil Passi

  • DB Call from Oracle Business Rule +Java Method call from OBR

    Hi,
    1.We have a requirement in project where we need to make DB Call from Business rule.
    We are using ORACLE SOA11g.
    Is this possible.Any pointers on this will be helpfull.
    2.Can we call java method from Oracle Business Rule.If so pls suggest how it can be done.
    Thanks In Advance,
    Oracle SOA User

    You can implement java class to make database updates using JDBC. You can add Java class as fact in business rules and invoke methods as actions of the business rules.
    Hope this will help.
    Jayesh Patel
    http://jayesh-patel.blogspot.com/
    http://www.yagnasys.com/

  • Oracle RDF and Oracle Business Rules & Protege

    A couple of questions:
    1.) Has anyone used Protege to create frame-based ontologies which can somehow be used with Oracle Business Rules?
    2.) Has anyone used Protege along with the RDF storage functionality in Oracle?
    Thanks.

    Melli,
    I just started with semantic so won't have many useful ideas for at least some time.
    mostly there will be bugs and misunderstanding on my part.
    At this point i do see that the supplied library is not working properly . see my other thread. Fixing that would be really helpful.
    Let me know
    As of Composer - well let's just say its cost ineffective for organization to use on pilot project..

  • Query on handling else condition in Oracle Business Rules.

    Hi all.
    I am working on Jdeveloper 11.1.1.1.0 Business Rules. While creating rules... i am able to write if conditions around the facts and attributes and also replicate the same using decision tables and is able to derive the action.
    My Question is.. can i write an else condition which should be executed when none of the if condition are matched. If we can how... Instead of else condition, is there any way that we can initialize the facts and attributes to be derived to a default value.
    Please help me guys in this... If this is not the right foru,... please redirect me to the correct one.. coz i couldnt find a forum for oracle business rules..
    Thanks
    Eldho

    Thanks a lot for the response..
    I have posted the query in
    Query on handling else condition in Oracle Business Rules.
    Thanks
    Eldho

Maybe you are looking for

  • My MacBook pro will not boot up. It make a beep sound.

    I tried to boot up my MacBook pro and it make a beep sound. Screen is blank.

  • How to sync iPhone to iPad

    Synching contacts from iPhone to ipad

  • Audio&video conference network deployment

    HI guys. I am new in conferencing so apologies if u guys think  my question is stupid . There is voice and data network and we need to install Biamp conference system which need connection to voice net for voice traffic and to data network for video

  • Have to pay for app again?

    Today, I tried to download COD4, Modern Warfare on my MacBook Air. It always works fine whenever I download it completely. However, I was halfway through the download when I wanted to download something else, so I tried to pause it, but instead i acc

  • ITunes Windows problems

    I have tried the options at http://docs.info.apple.com/article.html?artnum=304318 but I am still getting the error 0x666D743F I am kind of ticked about this, because I finally gave into the REPEATED badgering to update to itunes 7, when the version I