[rules-users] Adding eval on rule cause it to run in infinite loop

brachi brachi.w at sapiens.com
Wed Jun 11 09:44:52 EDT 2014


This example describes a case using function in the constraint
(Operators.containsAny) and pass a Fact Type that was changed in a previous
rule.

you are right that I can use the drools operator "IN (...)", but I wanted to
use function in the example, because that is the case that rules don't hit.
I have a lot of functions in my rules, also for custom operators and also
for complex formulas, and I need to cause this rules to hit, just eval
helped: 
/*supportFT( eval(Operators.containsAny(value,new
String[]{"supportedValue","otherValue"})))*/

adding / *$conclusion: ConclusionFt( value != "success" ) */ to the rule can
avoid the infinite loop... 
but this solution won't work for all my rules.
 for example: rule that count something:
/* modify($conclusion) { setValue($conclusion.getValue()+1)}*/.

to summarize, I have 2 problems:
1. rule doesn't hit.
2. eval solve problem 1, but cause infinite loop.



--
View this message in context: http://drools.46999.n3.nabble.com/Adding-eval-on-rule-cause-it-to-run-in-infinite-loop-tp4029966p4029987.html
Sent from the Drools: User forum mailing list archive at Nabble.com.


More information about the rules-users mailing list