Yes, the line:
Helper.containsAny(offerSubject, ((Set)colMap.get("_set_212")))
is part of my rule's LHS code. It acts as a normal predicate:
Caused by: org.drools.RuntimeDroolsException: Exception executing predicate
Helper.containsAny(offerSubject, ((Set)colMap.get("_set_35")))
at
org.drools.rule.PredicateConstraint.isAllowed(PredicateConstraint.java:298)
at org.drools.reteoo.AlphaNode.assertObject(AlphaNode.java:130)
at
org.drools.reteoo.CompositeObjectSinkAdapter.doPropagateAssertObject(CompositeObjectSinkAdapter.java:458)
at
org.drools.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:386)
at
org.drools.reteoo.ObjectTypeNode.assertObject(ObjectTypeNode.java:215)
at
org.drools.reteoo.EntryPointNode.assertObject(EntryPointNode.java:244)
at
org.drools.common.NamedEntryPoint.insert(NamedEntryPoint.java:330)
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.alibaba.china.ruleservice.session.impl.drools5.TransientDrools5Session.insertFact(TransientDrools5Session.java:100)
at
com.alibaba.china.avatar.offer.rulematch.OfferMatchFilter.doFilter(OfferMatchFilter.java:57)
... 23 more
Caused by: [Error: unexpected end of statement]
[Near : {... Helper.containsAny(offerSubject, ((Set)colMap.get("_set_35")))
....}]
^
[Line: 1, Column: 39]
at
org.mvel2.compiler.AbstractParser.nextToken(AbstractParser.java:1215)
at
org.mvel2.compiler.ExpressionCompiler._compile(ExpressionCompiler.java:128)
at
org.mvel2.util.ParseTools.subCompileExpression(ParseTools.java:2090)
at org.mvel2.ast.Substatement.<init>(Substatement.java:37)
at
org.mvel2.compiler.AbstractParser.nextToken(AbstractParser.java:1062)
at
org.mvel2.compiler.ExpressionCompiler._compile(ExpressionCompiler.java:128)
at
org.mvel2.compiler.ExpressionCompiler.compile(ExpressionCompiler.java:62)
at org.mvel2.MVEL.analyze(MVEL.java:680)
at
org.mvel2.compiler.PropertyVerifier.getMethod(PropertyVerifier.java:469)
at
org.mvel2.compiler.PropertyVerifier.analyze(PropertyVerifier.java:120)
at
org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileGetChain(ReflectiveAccessorOptimizer.java:404)
at
org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.optimizeAccessor(ReflectiveAccessorOptimizer.java:141)
at org.mvel2.ast.ASTNode.optimize(ASTNode.java:157)
at
org.mvel2.ast.ASTNode.getReducedValueAccelerated(ASTNode.java:113)
at org.mvel2.MVELRuntime.execute(MVELRuntime.java:87)
at
org.mvel2.compiler.CompiledExpression.getValue(CompiledExpression.java:122)
at
org.mvel2.compiler.CompiledExpression.getValue(CompiledExpression.java:115)
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)
... 35 more
Caused by: java.lang.ArrayIndexOutOfBoundsException: 0
at
org.mvel2.compiler.PropertyVerifier.getMethod(PropertyVerifier.java:565)
at
org.mvel2.compiler.PropertyVerifier.analyze(PropertyVerifier.java:120)
at
org.mvel2.compiler.ExpressionCompiler.verify(ExpressionCompiler.java:381)
at
org.mvel2.compiler.ExpressionCompiler._compile(ExpressionCompiler.java:273)
at
org.mvel2.util.ParseTools.subCompileExpression(ParseTools.java:2090)
at org.mvel2.ast.TypeCast.<init>(TypeCast.java:43)
at
org.mvel2.compiler.AbstractParser.nextToken(AbstractParser.java:1047)
... 54 more
--
View this message in context:
http://drools.46999.n3.nabble.com/rules-users-java-lang-ArrayIndexOutOfBo...
Sent from the Drools: User forum mailing list archive at
Nabble.com.