[jboss-jira] [JBoss JIRA] (DROOLS-809) NPE when using extend rules with or node and exists

Jonathan MERCIER (JIRA) issues at jboss.org
Mon Jun 8 12:30:03 EDT 2015


     [ https://issues.jboss.org/browse/DROOLS-809?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan MERCIER updated DROOLS-809:
------------------------------------
    Description: 
Dear
In some case extended rule failed to find  variable.

{panel:title=NPE|borderStyle=dashed|borderColor=#ccc|titleBGColor=#F7D6C1|bgColor=#FFFFCE}
Exception in thread "main" Exception executing consequence for rule "extended" in fr.cea.test: java.lang.NullPointerException
	at org.drools.core.runtime.rule.impl.DefaultConsequenceExceptionHandler.handleException(DefaultConsequenceExceptionHandler.java:39)
	at org.drools.core.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1125)
	at org.drools.core.phreak.RuleExecutor.fire(RuleExecutor.java:160)
	at org.drools.core.phreak.RuleExecutor.evaluateNetworkAndFire(RuleExecutor.java:108)
	at org.drools.core.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:1016)
	at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1302)
	at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1289)
	at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1262)
	at fr.cea.test.App.main(App.java:57)
Caused by: java.lang.NullPointerException
	at fr.cea.test.Rule_extended1921345119DefaultConsequenceInvokerGenerated.evaluate(Unknown Source)
	at fr.cea.test.Rule_extended1921345119DefaultConsequenceInvoker.evaluate(Unknown Source)
	at org.drools.core.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1114)
	... 7 more

{panel}

This occur when using "or", "exists" and "extends" 

A minimal test case is available on [github|https://github.com/bioinfornatics/DROOLS_NPE_rule_extended]

In this [test case |https://github.com/bioinfornatics/DROOLS_NPE_rule_extended/blob/master/src/main/resources/fr.cea.test/rules.drl]:
 if we comment line number 35 , any error are raised
 if we uncomment line number 10 , any error are raised
 if we remove all "exists" words, any error are raised

If the same rule is write using named consequence the test pass.

  was:
Dear
In some case extended rule failed to find  variable.
This occur when using "or", "exists" and "extends" 

A minimal test case is available on [github|https://github.com/bioinfornatics/DROOLS_NPE_rule_extended]

In this [test case |https://github.com/bioinfornatics/DROOLS_NPE_rule_extended/blob/master/src/main/resources/fr.cea.test/rules.drl]:
 if we comment line number 35 , any error are raised
 if we uncomment line number 10 , any error are raised
 if we remove all "exists" words, any error are raised

If the same rule is write using named consequence the test pass.



> NPE when using extend rules with or node and exists
> ---------------------------------------------------
>
>                 Key: DROOLS-809
>                 URL: https://issues.jboss.org/browse/DROOLS-809
>             Project: Drools
>          Issue Type: Bug
>            Reporter: Jonathan MERCIER
>            Assignee: Mark Proctor
>
> Dear
> In some case extended rule failed to find  variable.
> {panel:title=NPE|borderStyle=dashed|borderColor=#ccc|titleBGColor=#F7D6C1|bgColor=#FFFFCE}
> Exception in thread "main" Exception executing consequence for rule "extended" in fr.cea.test: java.lang.NullPointerException
> 	at org.drools.core.runtime.rule.impl.DefaultConsequenceExceptionHandler.handleException(DefaultConsequenceExceptionHandler.java:39)
> 	at org.drools.core.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1125)
> 	at org.drools.core.phreak.RuleExecutor.fire(RuleExecutor.java:160)
> 	at org.drools.core.phreak.RuleExecutor.evaluateNetworkAndFire(RuleExecutor.java:108)
> 	at org.drools.core.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:1016)
> 	at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1302)
> 	at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1289)
> 	at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1262)
> 	at fr.cea.test.App.main(App.java:57)
> Caused by: java.lang.NullPointerException
> 	at fr.cea.test.Rule_extended1921345119DefaultConsequenceInvokerGenerated.evaluate(Unknown Source)
> 	at fr.cea.test.Rule_extended1921345119DefaultConsequenceInvoker.evaluate(Unknown Source)
> 	at org.drools.core.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1114)
> 	... 7 more
> {panel}
> This occur when using "or", "exists" and "extends" 
> A minimal test case is available on [github|https://github.com/bioinfornatics/DROOLS_NPE_rule_extended]
> In this [test case |https://github.com/bioinfornatics/DROOLS_NPE_rule_extended/blob/master/src/main/resources/fr.cea.test/rules.drl]:
>  if we comment line number 35 , any error are raised
>  if we uncomment line number 10 , any error are raised
>  if we remove all "exists" words, any error are raised
> If the same rule is write using named consequence the test pass.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


More information about the jboss-jira mailing list