As the docs state sequential rete, I'm assuming this is what you mean,
does not allow full inference modification of data does not result in
re-evaluation of rules, i.e. update() does nothing.
You can achieve what you want using a custom Conflict Resolution
Strategy, however I advise you to be careful here and understand exactly
what you are asking for....
RuleBaseConfiguration has a property:
public void setConflictResolver(ConflictResolver conflictResolver);
RuleBaseConfiguration conf = new RuleBaseConfiguration();
conf.setConflictResolver( new LoaderOrderConflictResolver() );
Or you can use the property, with the value of the fully qualified class:
drools.conflictResolver = org.drools.conflict.LoaderOrderConflictResolver
However for the property version I made a mistake.... I forgot to add
the getInstance() method, which is needed for the property loading to
work. I suggest you subclass LoadOrderConflictResolver and add the
getInstance method and specify that, if you use the property approach.
I'll fix this for 4.0.1
Mark
Arjun Dhar wrote:
Hi,
I usually use decision tables without sequence. But there was a request Not to
use priority and if there was a conflict then the rule on top should get
priority.
I thought, sequence = true was a good way of ensuring that. But in the rules I
call update(); this forces all the rules to fire twice.
I think this is a bug; without sequence the update does not cause such problems.
Please advise,
Arjun
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users