Hello, guys, I've got a rule which states:
rule "quest_reach_level_1_in_any_category_accomplished" when $gsc : GameStateController(hasEventOccurred("eventId") && !hasEventOccurred("otherEventId") && hasAnyEventOccurred("param1", "param2", "param3", "param4", "param5", "param6", "param7", "param8", "param9", "param10", "param11", "param12")) $response : Response() then ... some business logic end which ends up with: Caused by: org.drools.RuntimeDroolsException: Exception executing predicate hasA nyEventOccurred("level1_love", "level1_friendship", "level1_prosperity", "level1 _charisma", "level1_willpower", "level1_wisdom", "level1_entertainment", "level1 _adventure", "level1_inspiration", "level1_harmony", "level1_lightheartedness", "level1_confidence") at org.drools.rule.PredicateConstraint.isAllowed(PredicateConstraint.java:298) at org.drools.reteoo.AlphaNode.modifyObject(AlphaNode.java:145) at org.drools.reteoo.SingleObjectSinkAdapter.propagateModifyObject(SingleObjectSinkAdapter.java:68) at org.drools.reteoo.AlphaNode.modifyObject(AlphaNode.java:149) at org.drools.reteoo.SingleObjectSinkAdapter.propagateModifyObject(SingleObjectSinkAdapter.java:68) at org.drools.reteoo.AlphaNode.modifyObject(AlphaNode.java:149) at org.drools.reteoo.CompositeObjectSinkAdapter.doPropagateModifyObject(CompositeObjectSinkAdapter.java:468) at org.drools.reteoo.CompositeObjectSinkAdapter.propagateModifyObject(CompositeObjectSinkAdapter.java:436) at org.drools.reteoo.ObjectTypeNode.modifyObject(ObjectTypeNode.java:288) at org.drools.reteoo.EntryPointNode.modifyObject(EntryPointNode.java:271) at org.drools.common.NamedEntryPoint.update(NamedEntryPoint.java:459) at org.drools.common.NamedEntryPoint.update(NamedEntryPoint.java:363) at org.drools.base.DefaultKnowledgeHelper.update(DefaultKnowledgeHelper.java:298) at org.drools.base.DefaultKnowledgeHelper.update(DefaultKnowledgeHelper.java:306) at org.drools.base.ModifyInterceptor.doAfter(ModifyInterceptor.java:59) at org.mvel2.ast.InterceptorWrapper.getReducedValueAccelerated(InterceptorWrapper.java:38) at org.mvel2.MVELRuntime.execute(MVELRuntime.java:87) at org.mvel2.compiler.CompiledExpression.getValue(CompiledExpression.java:122) at org.mvel2.MVEL.executeExpression(MVEL.java:930) at org.drools.base.mvel.MVELConsequence.evaluate(MVELConsequence.java:105) at org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1091) ... 47 more Caused by: java.lang.RuntimeException: cannot invoke method: hasAnyEventOccurred at org.mvel2.optimizers.impl.refl.nodes.MethodAccessor.getValue(MethodAccessor.java:62) at org.mvel2.ast.ASTNode.getReducedValueAccelerated(ASTNode.java:106) at org.mvel2.MVELRuntime.execute(MVELRuntime.java:87) at org.mvel2.compiler.CompiledExpression.getValue(CompiledExpression.java:122) at org.mvel2.MVEL.executeExpression(MVEL.java:930) at org.drools.base.mvel.MVELPredicateExpression.evaluate(MVELPredicateExpression.java:100) at org.drools.rule.PredicateConstraint.isAllowed(PredicateConstraint.java:291) ... 67 more Caused by: java.lang.ArrayIndexOutOfBoundsException: 12 at org.mvel2.optimizers.impl.refl.nodes.MethodAccessor.executeAll(MethodAccessor.java:148) at org.mvel2.optimizers.impl.refl.nodes.MethodAccessor.getValue(MethodAccessor.java:47) ... 73 more I'm using Drools 5.3.0.Final and it fails when it comes to evaluating the predicate hasAnyEventOccurred(String... varArgs). Thanks, Martin
_______________________________________________ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users