Uploaded image for project: 'Drools'
  1. Drools
  2. DROOLS-866

Drools decision table with contains operator in a conditional group not working

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Obsolete
    • Icon: Major Major
    • None
    • 6.2.0.Final
    • decision tables
    • None

      I cannot get the Decision Table to using grouping in the expression.

      Decision Table
      ------------------------------------
      <row 10> CONDITION
      <row 12> classList $param

      expressions are in each row.
      <row 43> (contains('AAA') || contains('BBB') ) && contains('CCC') <--fails to compile
      <row 44> (contains('AAA') || contains('BBB')
      <row 45> (contains('AA') || contains('BB') || contains('CCC') || contains('DDD')

      where the fact classList is

      List<String> classList =

      {'AAA', 'BB'.....}

      the rule43 is meant to fire if the list contains either 'AAA' OR 'BBB' AND 'CCC'

      however the decision table parser is failing with exception for rule 43

      [Error: Missing left node]
      [Near :

      {... classList (contains("AAA") || contains("CCC")) ....}

      ]
      i have a similar rule working fine for other rows

      <row 42> contains('AAA') || contains('BBB') || contains('CCC')
      there seems to be something strange with using the contains operator in a group condition.

            manstis@redhat.com Michael Anstis
            lpiccoli_jira lucio piccoli (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: