We're still getting a class cast exception for beta and eval memory (exception 
below). It is a different location and the opposite direction of the exception 
cast from JBRULES-1719.

The rule we ran was:

/**
* Load the smgl transform
*/
rule "Load Transform"
when
  $fact : ParametersFact(
           doc != "dmodule",
           $xml : xml != null,
           noopResponse == true,
   
eval(XPathUtil.selectElement($xml,"/*/transformLog//transform[name='s1000dv3']")==null),
   flags['loadedS1000Dv3']!=true,
   
eval(XPathUtil.selectElement($xml,"/*/transformLog//transform[name='detect']/results[result='text/xml']")!=null)
   )
   $importUtil : RuleImportUtil()
   $model : EditionsRulesJobRunner(stop==false,interrupt==false)
then

   Vector<String> libraries = new Vector<String>();
   libraries.add("lib");
   String documentType = "dmodule";
   String fragmentType = "dmodule";

   
$importUtil.importRules(kcontext,"transformCmd",documentType,fragmentType,libraries);
   $fact.getFlags().put("loadedS1000Dv3",true);
end

The thing of consequence here is the importRules call which modifies the 
kcontext and acts as a dynamic include (e.g. it imports new rules).

The exception received is:

INFO   | 2010/07/19 17:07:29 | jvm 1    | 2010-07-19 17:07:29,743  INFO 
com.infotrustgroup.restless.server.ThreadedService:An exception was trapped in 
com.infotrustgroup.jobs.services.auth.EditionsRulesJobRunner
INFO   | 2010/07/19 17:07:29 | jvm 1    | 
org.drools.runtime.rule.ConsequenceException: java.lang.ClassCastException: 
org.drools.reteoo.BetaMemory cannot be cast to 
org.drools.reteoo.EvalConditionNode$EvalMemory
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.runtime.rule.impl.DefaultConsequenceExceptionHandler.handleException(DefaultConsequenceExceptionHandler.java:23)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:943)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:885)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1086)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:660)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:627)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:183)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.rules.engine.RulesManager.runRules(RulesManager.java:363)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.util.rules.RuleFileUtil.runRules(RuleFileUtil.java:385)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.util.rules.RuleFileUtil.runRules(RuleFileUtil.java:349)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.util.rules.RuleRunner.run(RuleRunner.java:395)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.util.rules.RuleRunner.call(RuleRunner.java:193)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.jobs.services.auth.EditionsRulesJobRunner.runRules(EditionsRulesJobRunner.java:87)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
java.lang.reflect.Method.invoke(Method.java:597)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.restless.server.ThreadedService.runServiceMethod(ThreadedService.java:845)
INFO   | 2010/07/19 17:07:29 | jvm 1    | Caused by: 
java.lang.ClassCastException: org.drools.reteoo.BetaMemory cannot be cast to 
org.drools.reteoo.EvalConditionNode$EvalMemory
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.reteoo.EvalConditionNode.retractLeftTuple(EvalConditionNode.java:199)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.reteoo.ObjectTypeNode.retractObject(ObjectTypeNode.java:239)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.reteoo.EntryPointNode.retractObject(EntryPointNode.java:195)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.AbstractWorkingMemory.update(AbstractWorkingMemory.java:1416)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.AbstractWorkingMemory.update(AbstractWorkingMemory.java:1350)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.impl.StatefulKnowledgeSessionImpl.update(StatefulKnowledgeSessionImpl.java:231)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.rules.engine.RulesManager$InnerPropertyChangeListener.propertyChange(RulesManager.java:467)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:339)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.util.collections.BoundMap.put(BoundMap.java:67)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.what.Rule_Load_ATAXML_Transform_0.consequence(Rule_Load_ATAXML_Transform_0.java:28)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.what.Rule_Load_ATAXML_Transform_0ConsequenceInvoker.evaluate(Rule_Load_ATAXML_Transform_0ConsequenceInvoker.java:28)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:934)
INFO   | 2010/07/19 17:07:29 | jvm 1    | ... 16 more
INFO   | 2010/07/19 17:07:29 | jvm 1    | 
org.drools.runtime.rule.ConsequenceException: java.lang.ClassCastException: 
org.drools.reteoo.BetaMemory cannot be cast to 
org.drools.reteoo.EvalConditionNode$EvalMemory
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.runtime.rule.impl.DefaultConsequenceExceptionHandler.handleException(DefaultConsequenceExceptionHandler.java:23)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:943)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:885)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1086)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:660)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:627)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:183)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.rules.engine.RulesManager.runRules(RulesManager.java:363)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.util.rules.RuleFileUtil.runRules(RuleFileUtil.java:385)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.util.rules.RuleFileUtil.runRules(RuleFileUtil.java:349)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.util.rules.RuleRunner.run(RuleRunner.java:395)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.util.rules.RuleRunner.call(RuleRunner.java:193)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.jobs.services.auth.EditionsRulesJobRunner.runRules(EditionsRulesJobRunner.java:87)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
java.lang.reflect.Method.invoke(Method.java:597)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.restless.server.ThreadedService.runServiceMethod(ThreadedService.java:845)
INFO   | 2010/07/19 17:07:29 | jvm 1    | Caused by: 
java.lang.ClassCastException: org.drools.reteoo.BetaMemory cannot be cast to 
org.drools.reteoo.EvalConditionNode$EvalMemory
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.reteoo.EvalConditionNode.retractLeftTuple(EvalConditionNode.java:199)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.reteoo.ObjectTypeNode.retractObject(ObjectTypeNode.java:239)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.reteoo.EntryPointNode.retractObject(EntryPointNode.java:195)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.AbstractWorkingMemory.update(AbstractWorkingMemory.java:1416)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.AbstractWorkingMemory.update(AbstractWorkingMemory.java:1350)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.impl.StatefulKnowledgeSessionImpl.update(StatefulKnowledgeSessionImpl.java:231)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.rules.engine.RulesManager$InnerPropertyChangeListener.propertyChange(RulesManager.java:467)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:339)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.util.collections.BoundMap.put(BoundMap.java:67)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.what.Rule_Load_ATAXML_Transform_0.consequence(Rule_Load_ATAXML_Transform_0.java:28)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.what.Rule_Load_ATAXML_Transform_0ConsequenceInvoker.evaluate(Rule_Load_ATAXML_Transform_0ConsequenceInvoker.java:28)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:934)
INFO   | 2010/07/19 17:07:29 | jvm 1    | ... 16 more
INFO   | 2010/07/19 17:07:29 | jvm 1    | 2010-07-19 17:07:29,759 FATAL 
com.infotrustgroup.jobs.services.auth.EditionsRulesJobRunner:Worker service 
threw an unexpected exception.
INFO   | 2010/07/19 17:07:29 | jvm 1    | 
org.drools.runtime.rule.ConsequenceException: java.lang.ClassCastException: 
org.drools.reteoo.BetaMemory cannot be cast to 
org.drools.reteoo.EvalConditionNode$EvalMemory
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.runtime.rule.impl.DefaultConsequenceExceptionHandler.handleException(DefaultConsequenceExceptionHandler.java:23)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:943)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:885)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1086)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:660)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:627)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:183)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.rules.engine.RulesManager.runRules(RulesManager.java:363)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.util.rules.RuleFileUtil.runRules(RuleFileUtil.java:385)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.util.rules.RuleFileUtil.runRules(RuleFileUtil.java:349)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.util.rules.RuleRunner.run(RuleRunner.java:395)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.util.rules.RuleRunner.call(RuleRunner.java:193)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.jobs.services.auth.EditionsRulesJobRunner.runRules(EditionsRulesJobRunner.java:87)
INFO   | 2010/07/19 17:07:29 | jvm 1    | Caused by: 
java.lang.ClassCastException: org.drools.reteoo.BetaMemory cannot be cast to 
org.drools.reteoo.EvalConditionNode$EvalMemory
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.reteoo.EvalConditionNode.retractLeftTuple(EvalConditionNode.java:199)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.reteoo.ObjectTypeNode.retractObject(ObjectTypeNode.java:239)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.reteoo.EntryPointNode.retractObject(EntryPointNode.java:195)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.AbstractWorkingMemory.update(AbstractWorkingMemory.java:1416)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.AbstractWorkingMemory.update(AbstractWorkingMemory.java:1350)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.impl.StatefulKnowledgeSessionImpl.update(StatefulKnowledgeSessionImpl.java:231)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.rules.engine.RulesManager$InnerPropertyChangeListener.propertyChange(RulesManager.java:467)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:339)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.util.collections.BoundMap.put(BoundMap.java:67)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.what.Rule_Load_ATAXML_Transform_0.consequence(Rule_Load_ATAXML_Transform_0.java:28)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
com.infotrustgroup.what.Rule_Load_ATAXML_Transform_0ConsequenceInvoker.evaluate(Rule_Load_ATAXML_Transform_0ConsequenceInvoker.java:28)
INFO   | 2010/07/19 17:07:29 | jvm 1    | at 
org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:934)
INFO   | 2010/07/19 17:07:29 | jvm 1    | ... 11 more

Point of speculation:

When looking at the latest code on trunk I would believe this is not fixed as 
the line pointed to here has not changed (the place where this line exists has 
changed but not the code see fisheye at 
http://fisheye.jboss.org/browse/JBossRules/trunk/drools-core/src/main/java/org/drools/reteoo/EvalConditionNode.java?r1=23650&r2=34068&u=20
 and where the lefthand side was 199 for 5.0.1 it is still the same code in the 
latest svn revision (now line 229).
-- Paul Ryan

_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users

Reply via email to