No idea.. that piece of code works for me, using drools 5.0.1 :-/
2010/5/6 Antonio Neto <antoniosouzan...@gmail.com> > Oi Miguel, > > when I try this in the "doMove" method using the "workingMemory" instead of > "ksession" I got this error > > Exception in thread "main" java.lang.UnsupportedOperationException: this > is implementedby StatefulKnowledgeImpl > at org.drools.reteoo.ReteooWorkingMemory.getFactHandles > (ReteooWorkingMemory.java:363) > ... > ... > > Any idea? > > Obrigado > > Antonio > > > 2010/5/6 miguel machado <mls.mach...@gmail.com> > > Olá Antonio, >> >> // retract all of it just in case >> for (Object fact : ksession.getFactHandles()) { >> ksession.retract((FactHandle) fact); >> } >> >> Hope this helps. >> _ miguel >> >> >> >> 2010/5/5 Antonio Neto <antoniosouzan...@gmail.com> >> >> Hi, >>> >>> Thank you very much for all replies. >>> >>> I've tried also with not ( EPackage(...)), but the result is the same. >>> >>> I think that I remove the EClass from the facts in my solution, but they >>> continue in my workingMemory. >>> >>> How I can see the facts of the workingMemory object (and how remove it)? >>> >>> Thanks >>> >>> Best regards >>> >>> Antonio >>> >>> 2010/5/5 <fgad...@genigraph.fr> >>> >>>> Hi Antonio, >>>> Documentation states that the complement to "not" is "exists", whereas >>>> "not" keyword is used to match the absence of a fact (in Working Memory), >>>> and "exists" keyword is used to test the existence of one or more facts (in >>>> Working memory). >>>> >>>> So if you want to test that a fact is not in working memory, then you >>>> should use the >>>> not(MyClass()) pattern. >>>> >>>> Hope this helps, >>>> Francois. >>>> >>>> Antonio Neto <antoniosouzan...@gmail.com> a écrit : >>>> >>>> >>>> > Any idea? Please... >>>> > >>>> > 2010/5/4 Antonio Neto <antoniosouzan...@gmail.com> >>>> > >>>> >> Hi all, >>>> >> >>>> >> I don't know exactly why I have a problem in my "exists" function. >>>> I've >>>> >> tried many different ways, but it does not work. Anybody could help >>>> me, >>>> >> please? >>>> >> >>>> >> >>>> >> I have the following rules: >>>> >> >>>> >> *rule "diff" >>>> >> when >>>> >> $var1: EReference(name == "employee") >>>> >> $var2: EClass(name == "Company", EAllReferences contains $var1) >>>> >> not (exists( EPackage(EClassifiers contains $var2 ) )) >>>> >> then >>>> >> insertLogical(new IntConstraintOccurrence("diff", 10)); >>>> >> end >>>> >> >>>> >> rule "ClassesNotReferenced" >>>> >> when >>>> >> $q1 : EClass(); >>>> >> $q2 : EPackage(EClassifiers contains $q1); >>>> >> not( exists ( EReference(EType == $q1) )); >>>> >> then >>>> >> insertLogical(new >>>> IntConstraintOccurrence("ClassesNotReferenced", >>>> >> 1, $q1)); >>>> >> end* >>>> >> >>>> >> >>>> >> and in my facts (and my EPackage) I have 4 instances of EClass >>>> "Company" >>>> >> with a EReference "employee", and another EClass "Person". I still >>>> have a >>>> >> "move" that removes EClasses in my Drools Solver. >>>> >> >>>> >> I need to have only one classe "Company" after processing. But it >>>> removes >>>> >> only the EClass "Person", when it was supposed to remove one EClass >>>> "Person" >>>> >> and 3 ECLasses "Company". Leaving one EClass "Company" in the end. >>>> >> >>>> >> The problem is: when Drools tries to remove a EClass "Person" it >>>> thinks >>>> >> that the EClass "Company" does not exists. But in fact there are 3 >>>> others. >>>> >> >>>> >> Any clue about it, please ? >>>> >> >>>> >> Thanks >>>> >> >>>> >> Bests regards >>>> >> >>>> >> Antonio >>>> >> >>>> >> >>>> >> >>>> > >>>> >>>> _______________________________________________ >>>> rules-users mailing list >>>> rules-users@lists.jboss.org >>>> https://lists.jboss.org/mailman/listinfo/rules-users >>>> >>>> >>> >>> _______________________________________________ >>> rules-users mailing list >>> rules-users@lists.jboss.org >>> https://lists.jboss.org/mailman/listinfo/rules-users >>> >>> >> >> >> -- >> "To understand what is recursion you must first understand recursion" >> >> _______________________________________________ >> rules-users mailing list >> rules-users@lists.jboss.org >> https://lists.jboss.org/mailman/listinfo/rules-users >> >> > > _______________________________________________ > rules-users mailing list > rules-users@lists.jboss.org > https://lists.jboss.org/mailman/listinfo/rules-users > > -- "To understand what is recursion you must first understand recursion"
_______________________________________________ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users