[rules-users] Two bugs(?) of drools 5.3
Edson Tirelli
ed.tirelli at gmail.com
Fri Dec 30 20:46:17 EST 2011
By your description, they look like problems, so please open a ticket
for them.
Edson
2011/12/28 Miles Wen <miles.wy.1 at gmail.com>
> Hi all,
> I'm using drools 5.3.0.Final.And I think I found two possibly bugs:
>
> 1): drl compilation failed when encountering multiple continuous '!'
> (a.k.a 'not' operator)s.for example:
>
> rule "out"
> when
> Msg(!!!false)
> then
> end
>
> the code above won't compile, but 'Msg(!false)' compiles correctly. I
> remember there's no such problems when using drools 5.0, this caused some
> incompatibility issues in our system...
>
> 2): Weird exception thrown: java.lang.ClassCastException:
> org.drools.reteoo.InitialFactImpl cannot be cast to XXX..., for example:
>
> rule "test"
> when
> l1:Msg(str == 'test') and
> l2:Msg(!bool) or
> eval(!false)
> then
> end
>
> this code above throws exception at runtime:
>
> org.drools.RuntimeDroolsException: Unexpected exception executing action
> org.drools.reteoo.ReteooWorkingMemory$WorkingMemoryReteAssertAction at 743fbbfc
> at
> org.drools.common.AbstractWorkingMemory.executeQueuedActions(AbstractWorkingMemory.java:977)
> at org.drools.common.NamedEntryPoint.insert(NamedEntryPoint.java:315)
> at org.drools.common.NamedEntryPoint.insert(NamedEntryPoint.java:291)
> at
> org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:886)
> at
> org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:845)
> at
> org.drools.impl.StatefulKnowledgeSessionImpl.insert(StatefulKnowledgeSessionImpl.java:255)
> at com.sample.DroolsTest.main(DroolsTest.java:56)
> Caused by: org.drools.RuntimeDroolsException:
> com.sample.Rule_testEval0Invoker at 3e1b05a2 : java.lang.ClassCastException:
> org.drools.reteoo.InitialFactImpl cannot be cast to com.sample.Msg
> at org.drools.rule.EvalCondition.isAllowed(EvalCondition.java:119)
> at
> org.drools.reteoo.EvalConditionNode.assertLeftTuple(EvalConditionNode.java:178)
> at
> org.drools.reteoo.SingleLeftTupleSinkAdapter.doPropagateAssertLeftTuple(SingleLeftTupleSinkAdapter.java:197)
> at
> org.drools.reteoo.SingleLeftTupleSinkAdapter.createAndPropagateAssertLeftTuple(SingleLeftTupleSinkAdapter.java:146)
> at
> org.drools.reteoo.LeftInputAdapterNode.assertObject(LeftInputAdapterNode.java:158)
> at
> org.drools.reteoo.SingleObjectSinkAdapter.propagateAssertObject(SingleObjectSinkAdapter.java:59)
> at
> org.drools.reteoo.ObjectTypeNode.assertObject(ObjectTypeNode.java:215)
> at
> org.drools.reteoo.EntryPointNode.assertObject(EntryPointNode.java:244)
> at org.drools.reteoo.Rete.assertObject(Rete.java:107)
> at
> org.drools.reteoo.ReteooRuleBase.assertObject(ReteooRuleBase.java:284)
> at
> org.drools.reteoo.ReteooWorkingMemory$WorkingMemoryReteAssertAction.execute(ReteooWorkingMemory.java:404)
> at
> org.drools.common.AbstractWorkingMemory.executeQueuedActions(AbstractWorkingMemory.java:975)
> ... 6 more
> Caused by: java.lang.ClassCastException: org.drools.reteoo.InitialFactImpl
> cannot be cast to com.sample.Msg
> at com.sample.Rule_testEval0Invoker.evaluate(Unknown Source)
> at org.drools.rule.EvalCondition.isAllowed(EvalCondition.java:114)
> ... 17 more
>
> Is there any workaround for those problems? especially the 2nd one...
>
> Any help would be appreciated,
> Thanks!
>
> --
> Regards.
> Miles. Wen
>
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>
--
Edson Tirelli
JBoss Drools Core Development
JBoss by Red Hat @ www.jboss.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20111230/7d089680/attachment.html
More information about the rules-users
mailing list