[jboss-jira] [JBoss JIRA] (JBRULES-3383) Order of fact retractions causes NPE
Wolfgang Laun (JIRA)
jira-events at lists.jboss.org
Fri Feb 10 09:03:48 EST 2012
[ https://issues.jboss.org/browse/JBRULES-3383?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Wolfgang Laun updated JBRULES-3383:
-----------------------------------
Attachment: events.drl
Main.java
Monitor.java
StateEvent.java
All files are in package "hashcode" (sorry).
> Order of fact retractions causes NPE
> ------------------------------------
>
> Key: JBRULES-3383
> URL: https://issues.jboss.org/browse/JBRULES-3383
> Project: Drools
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: drools-core, drools-core (expert)
> Affects Versions: 5.3.0.Final
> Reporter: Wolfgang Laun
> Assignee: Mark Proctor
> Priority: Critical
> Attachments: events.drl, Main.java, Monitor.java, StateEvent.java
>
>
> Insert one from each, the second referencing the first:
> class Event{ String name; }
> class Monitor{ Event event; String name; }
> The following rule runs into a NPE, except when reversing the marked lines.
> rule "timeout"
> timer( int: 10s )
> when
> $m: Monitor( name == $name )
> $e: Event($name: name)
> then
> retract( $m ); // =======================
> retract( $m.getEvent() ); // ========================
> end
> Exception in thread "main" Exception executing consequence for rule "start monitoring" in hashcode: java.lang.NullPointerException
> at org.drools.runtime.rule.impl.DefaultConsequenceExceptionHandler.handleException(DefaultConsequenceExceptionHandler.java:39)
> at org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1101)
> at org.drools.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:1029)
> at org.drools.common.DefaultAgenda.fireUntilHalt(DefaultAgenda.java:1229)
> at org.drools.common.AbstractWorkingMemory.fireUntilHalt(AbstractWorkingMemory.java:753)
> at org.drools.common.AbstractWorkingMemory.fireUntilHalt(AbstractWorkingMemory.java:729)
> at org.drools.impl.StatefulKnowledgeSessionImpl.fireUntilHalt(StatefulKnowledgeSessionImpl.java:234)
> at hashcode.Main.execute(Main.java:148)
> at hashcode.Main.main(Main.java:206)
> Caused by: java.lang.NullPointerException
> at org.drools.base.hashcode.StateEvent42211789$getItemName.getValue(Unknown Source)
> at org.drools.base.ClassFieldReader.getValue(ClassFieldReader.java:87)
> at org.drools.rule.Declaration.getValue(Declaration.java:219)
> at hashcode.Rule_start_monitoringDefaultConsequenceInvoker.evaluate(Unknown Source)
> at org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1091)
> ... 7 more
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list