[jboss-jira] [JBoss JIRA] (DROOLS-4525) NullPointerException in MatchesOperator with executable model

Martin Weiler (Jira) issues at jboss.org
Wed Sep 11 11:15:01 EDT 2019


Martin Weiler created DROOLS-4525:
-------------------------------------

             Summary: NullPointerException in MatchesOperator with executable model
                 Key: DROOLS-4525
                 URL: https://issues.jboss.org/browse/DROOLS-4525
             Project: Drools
          Issue Type: Bug
          Components: core engine, executable model
    Affects Versions: 7.26.0.Final
            Reporter: Martin Weiler
            Assignee: Mario Fusco


A rule has the following constraint:
{noformat}
$p : Person(likes matches "^[0-9]{3}.*$")
{noformat}

If a Person object is inserted into the working memory with the {{likes}} field unset, this results in a NullPointerException when using the executable model:

{noformat}
java.lang.RuntimeException: java.lang.RuntimeException: java.lang.NullPointerException
	at org.drools.modelcompiler.constraints.ConstraintEvaluator.evaluate(ConstraintEvaluator.java:77)
	at org.drools.modelcompiler.constraints.LambdaConstraint.isAllowed(LambdaConstraint.java:108)
	at org.drools.core.reteoo.AlphaNode.assertObject(AlphaNode.java:139)
	at org.drools.core.reteoo.CompositeObjectSinkAdapter.doPropagateAssertObject(CompositeObjectSinkAdapter.java:501)
	at org.drools.core.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:399)
	at org.drools.core.reteoo.ObjectTypeNode.propagateAssert(ObjectTypeNode.java:324)
	at org.drools.core.phreak.PropagationEntry$Insert.propagate(PropagationEntry.java:161)
	at org.drools.core.phreak.PropagationEntry$Insert.execute(PropagationEntry.java:166)
	at org.drools.core.phreak.SynchronizedPropagationList.flush(SynchronizedPropagationList.java:96)
	at org.drools.core.phreak.SynchronizedPropagationList.flush(SynchronizedPropagationList.java:91)
	at org.drools.core.common.DefaultAgenda.fireLoop(DefaultAgenda.java:1046)
	at org.drools.core.common.DefaultAgenda.internalFireAllRules(DefaultAgenda.java:1009)
	at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1001)
	at org.drools.core.impl.StatefulKnowledgeSessionImpl.internalFireAllRules(StatefulKnowledgeSessionImpl.java:1330)
	at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1321)
	at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1305)
	at org.drools.modelcompiler.CompilerTest.testMatchesOnNullString(CompilerTest.java:2003)
...
Caused by: java.lang.RuntimeException: java.lang.NullPointerException
	at org.drools.model.DSL.eval(DSL.java:715)
	at defaultpkg.RulesD6C04ACCB409930058C1DE751731F5EDRuleMethods0.lambda$rule_R2$8e86359d$1(RulesD6C04ACCB409930058C1DE751731F5EDRuleMethods0.java:39)
	at org.drools.model.functions.Predicate1$Impl.test(Predicate1.java:18)
	at org.drools.model.constraints.SingleConstraint1.lambda$getPredicate$8a56b796$1(SingleConstraint1.java:40)
	at org.drools.modelcompiler.constraints.ConstraintEvaluator.evaluate(ConstraintEvaluator.java:73)
	... 49 more
Caused by: java.lang.NullPointerException
	at org.drools.model.operators.MatchesOperator.eval(MatchesOperator.java:27)
	at org.drools.model.operators.MatchesOperator.eval(MatchesOperator.java:21)
	at org.drools.model.functions.Operator$SingleValue.test(Operator.java:41)
	at org.drools.model.functions.Operator$SingleValue.test(Operator.java:39)
	at org.drools.model.DSL.eval(DSL.java:713)
	... 53 more
{noformat}



--
This message was sent by Atlassian Jira
(v7.13.5#713005)


More information about the jboss-jira mailing list