<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Are you using drools 4.0.7?<br><br>&nbsp;&nbsp;&nbsp;&nbsp; []s<br>&nbsp;&nbsp;&nbsp;&nbsp; Edson<br><br><div class="gmail_quote">2008/6/10 kunal &lt;<a href="mailto:kshah@sensorlogic.com">kshah@sensorlogic.com</a>&gt;:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>
I am dynamically adding/modifying rules (packages) to a loaded rule-base and<br>
having issues specifically when my rule contains accumulate CE. For an<br>
example, following is a rule which I am trying to add to my rulebase (which<br>
is already loaded in memory).<br>
<br>
rule &quot;7d7fa7f1-164b-45a7-8e5a-c0c260815f9a&quot;<br>
 &nbsp; &nbsp; &nbsp; &nbsp;enabled true<br>
 &nbsp; &nbsp; &nbsp; &nbsp;salience 0<br>
 &nbsp; &nbsp; &nbsp; &nbsp;no-loop true<br>
 &nbsp; &nbsp; &nbsp; &nbsp;agenda-group &quot;DATA_ARRIVAL&quot;<br>
 &nbsp; &nbsp; &nbsp; &nbsp;when<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;AgentID(agentId : agentId);<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;DeviceData()<br>
<br>
Property(key==&quot;threshold&quot;,classifier==&quot;7d7fa7f1-164b-45a7-8e5a-c0c260815f9a.Condition0&quot;,$prop_threshold0<br>
: value)<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$total0: Number( doubleValue &gt; $prop_threshold0) &nbsp; from accumulate(<br>
DataPoint( $value0: value ) from<br>
dataService.getDataPoints(&quot;5e0de623-9a25-45a1-8bc5-745254c2576e&quot;,&quot;SPEED&quot;,3),<br>
average( $value0) )<br>
 &nbsp; &nbsp; &nbsp; &nbsp;then<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;agent.handleAction(&quot;rules.sl.7d7fa7f1-164b-45a7-8e5a-c0c260815f9a&quot;,0);<br>
end<br>
<br>
I am not getting any error (Rule validation or any other) when adding<br>
package with my rule to rulebase, but when getting following error, when<br>
rulebase is used thereafter:<br>
<br>
java.lang.NoClassDefFoundError:<br>
rules/sl/Rule_7d7fa7f1_164b_45a7_8e5a_c0c260815f9a_0<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at<br>
rules.sl.Rule_7d7fa7f1_164b_45a7_8e5a_c0c260815f9a_0AccumulateExpression0Invoker.evaluate(Unknown<br>
Source)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at<br>
org.drools.base.accumulators.JavaAccumulatorFunctionExecutor.reverse(JavaAccumulatorFunctionExecutor.java:91)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at org.drools.rule.Accumulate.reverse(Accumulate.java:151)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at<br>
org.drools.reteoo.AccumulateNode.modifyTuple(AccumulateNode.java:376)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at<br>
org.drools.reteoo.AccumulateNode.retractObject(AccumulateNode.java:292)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at<br>
org.drools.reteoo.SingleObjectSinkAdapter.propagateRetractObject(SingleObjectSinkAdapter.java:32)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at<br>
org.drools.reteoo.RightInputAdapterNode.retractTuple(RightInputAdapterNode.java:124)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at<br>
org.drools.reteoo.SingleTupleSinkAdapter.propagateRetractTuple(SingleTupleSinkAdapter.java:38)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at org.drools.reteoo.FromNode.retractTuple(FromNode.java:130)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at<br>
org.drools.reteoo.CompositeTupleSinkAdapter.propagateRetractTuple(CompositeTupleSinkAdapter.java:52)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at org.drools.reteoo.JoinNode.retractTuple(JoinNode.java:231)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at<br>
org.drools.reteoo.CompositeTupleSinkAdapter.propagateRetractTuple(CompositeTupleSinkAdapter.java:52)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at org.drools.reteoo.JoinNode.retractObject(JoinNode.java:191)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at<br>
org.drools.reteoo.CompositeObjectSinkAdapter.propagateRetractObject(CompositeObjectSinkAdapter.java:375)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at<br>
org.drools.reteoo.ObjectTypeNode.retractObject(ObjectTypeNode.java:189)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at org.drools.reteoo.Rete.retractObject(Rete.java:215)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at<br>
org.drools.reteoo.ReteooRuleBase.retractObject(ReteooRuleBase.java:211)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at<br>
org.drools.reteoo.ReteooWorkingMemory.doRetract(ReteooWorkingMemory.java:79)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at<br>
org.drools.common.AbstractWorkingMemory.retract(AbstractWorkingMemory.java:1023)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at<br>
org.drools.common.AbstractWorkingMemory.retract(AbstractWorkingMemory.java:982)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at<br>
com.sensorlogic.rules.RuleAgent.retractMatchingFact(RuleAgent.java:283)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at com.sensorlogic.rules.RuleAgent.processFact(RuleAgent.java:264)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at com.sensorlogic.rules.RuleAgent.run(RuleAgent.java:342)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at<br>
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at<br>
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)<br>
 &nbsp; &nbsp; &nbsp; &nbsp;at java.lang.Thread.run(Thread.java:595)<br>
<br>
I will appreciate any insight with this problem. My process of<br>
adding/updating rules dynamically works with all other rules I am using but<br>
only has issues with using &#39;accumulate&#39; CE. Has someone encountered this<br>
before? Or just any ideas on what can cause NoClassDefFound for my added<br>
rule?<br>
<font color="#888888">--<br>
View this message in context: <a href="http://www.nabble.com/NoClassDefFoundError-when-dynamically-updating-rulebase-for-rule-using-%27accumulate%27-CE-tp17765904p17765904.html" target="_blank">http://www.nabble.com/NoClassDefFoundError-when-dynamically-updating-rulebase-for-rule-using-%27accumulate%27-CE-tp17765904p17765904.html</a><br>

Sent from the drools - user mailing list archive at Nabble.com.<br>
<br>
_______________________________________________<br>
rules-users mailing list<br>
<a href="mailto:rules-users@lists.jboss.org">rules-users@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/rules-users" target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a><br>
</font></blockquote></div><br><br clear="all"><br>-- <br> Edson Tirelli<br> JBoss Drools Core Development<br> Office: +55 11 3529-6000<br> Mobile: +55 11 9287-5646<br> JBoss, a division of Red Hat @ <a href="http://www.jboss.com">www.jboss.com</a>