[rules-users] Serialization issue

Eric Miles eric.miles at kronos.com
Thu Dec 13 11:28:45 EST 2007


All,

I'm using Xstream for serialization in my project.  I am having an issue
after deserializing a package in that application's classloader can't
find a generated class created by Drools for a function.  When I look at
the serialized XML, I see an entry for the class:

<entry>
<string>com/kronos/webta/service/smarttime/rules/CalculateTotal.class</string>
...
</entry>

When I step through the Package being deserialized, I see the proper
function name if the functions list (calculateTotal) as well as I see
com.kronos.webta.service.smarttime.rules.CalculateTotal.calculateTotal
listed as a static import.

However, when I go to actually run this rule I get the following:

java.lang.NoClassDefFoundError:
com/kronos/webta/service/smarttime/rules/CalculateTotal
	ASMAccessorImpl_52652861197561487220.getValue(Unknown Source)
	org.mvel.ASTNode.getReducedValueAccelerated(ASTNode.java:173)
	org.mvel.MVELRuntime.execute(MVELRuntime.java:88)
	org.mvel.CompiledExpression.getValue(CompiledExpression.java:108)
	org.mvel.MVEL.executeExpression(MVEL.java:247)
	org.drools.base.dataproviders.MVELDataProvider.getResults(MVELDataProvider.java:45)
	org.drools.reteoo.FromNode.assertTuple(FromNode.java:64)
	org.drools.reteoo.SingleTupleSinkAdapter.propagateAssertTuple(SingleTupleSinkAdapter.java:20)
	org.drools.reteoo.CollectNode.modifyTuple(CollectNode.java:315)
	org.drools.reteoo.CollectNode.assertObject(CollectNode.java:214)
	org.drools.reteoo.SingleObjectSinkAdapter.propagateAssertObject(SingleObjectSinkAdapter.java:22)
	org.drools.reteoo.AlphaNode.assertObject(AlphaNode.java:140)
	org.drools.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:317)
	org.drools.reteoo.ObjectTypeNode.assertObject(ObjectTypeNode.java:153)
	org.drools.reteoo.Rete.assertObject(Rete.java:177)
	org.drools.reteoo.ReteooRuleBase.assertObject(ReteooRuleBase.java:192)
	org.drools.reteoo.ReteooWorkingMemory.doInsert(ReteooWorkingMemory.java:71)
	org.drools.common.AbstractWorkingMemory.update(AbstractWorkingMemory.java:1268)
	org.drools.base.DefaultKnowledgeHelper.update(DefaultKnowledgeHelper.java:96)

Anyone have any idea about how to go about finding out what the issue is?

Thanks in advance.

Eric



More information about the rules-users mailing list