[jboss-jira] [JBoss JIRA] Commented: (JBRULES-1784) Class Cast exception when using from
Dave Sinclair (JIRA)
jira-events at lists.jboss.org
Fri Sep 26 14:21:20 EDT 2008
[ https://jira.jboss.org/jira/browse/JBRULES-1784?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12431421#action_12431421 ]
Dave Sinclair commented on JBRULES-1784:
----------------------------------------
More info. If a Chassis is asserted first, it works fine. But if the application is restarted a Slot asserted, the laster a chassis this happens. Here is a stack trace. Also note that I print out all the objects for the session before the insertion
2008-08-26 14:17:54,718 [http-8443-1] (DroolsService.java:104) DEBUG com.sungard.ams.internal.service.rules.DroolsService - --------------------------
RULES SERVER OBJECTS BEFORE FIRING -----------------------------
2008-08-26 14:17:54,718 [http-8443-1] (DroolsService.java:111) DEBUG com.sungard.ams.internal.service.rules.DroolsService - --------------------------
----------------------------------------------------------------
>==[AgendaGroupPushedEvent(Traversal]
2008-08-26 14:17:54,718 [http-8443-1] (DroolsService.java:127) DEBUG com.sungard.ams.internal.service.rules.DroolsService - Inserting ClassName:[Blade
ServerSlot], GUID:[40F70DE0-C30D-D16F-FF3A-C34779854DB8], Revision#:[1], Creation Date:[Tue Aug 26 14:17:54 EDT 2008], ModDate:[Tue Aug 26 14:17:54 ED
T 2008], ModBy:[david.sinclair], CommonName:[blade server slot 2] of type class com.sungard.ams.persistence.model.objects.BladeServerSlot
2008-08-26 14:17:54,765 [http-8443-1] (AbstractController.java:75) ERROR com.sungard.wile.ws.AbstractController - com.sungard.ams.persistence.model.ob
jects.BladeServerSlot cannot be cast to com.sungard.ams.persistence.model.objects.BladeChassis$$EnhancerByCGLIB$$b843d794
java.lang.ClassCastException: com.sungard.ams.persistence.model.objects.BladeServerSlot cannot be cast to com.sungard.ams.persistence.model.objects.Bl
adeChassis$$EnhancerByCGLIB$$b843d794
at ASMAccessorImpl_309682341219774624650.getValue(Unknown Source)
at org.mvel.ast.VariableDeepPropertyNode.getReducedValueAccelerated(VariableDeepPropertyNode.java:22)
at org.mvel.ast.PropertyASTNode.getReducedValueAccelerated(PropertyASTNode.java:21)
at org.mvel.MVELRuntime.execute(MVELRuntime.java:90)
at org.mvel.CompiledExpression.getValue(CompiledExpression.java:111)
at org.mvel.MVEL.executeExpression(MVEL.java:252)
at org.drools.base.dataproviders.MVELDataProvider.getResults(MVELDataProvider.java:55)
at org.drools.reteoo.FromNode.assertTuple(FromNode.java:68)
at org.drools.reteoo.SingleTupleSinkAdapter.createAndPropagateAssertTuple(SingleTupleSinkAdapter.java:55)
at org.drools.reteoo.LeftInputAdapterNode.assertObject(LeftInputAdapterNode.java:116)
at org.drools.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:318)
at org.drools.reteoo.ObjectTypeNode.assertObject(ObjectTypeNode.java:162)
at org.drools.reteoo.Rete.assertObject(Rete.java:175)
at org.drools.reteoo.ReteooRuleBase.assertObject(ReteooRuleBase.java:192)
at org.drools.reteoo.ReteooWorkingMemory.doInsert(ReteooWorkingMemory.java:71)
at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:911)
at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:883)
at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:684)
at com.sungard.ams.internal.service.rules.DroolsService.execute(DroolsService.java:129)
> Class Cast exception when using from
> ------------------------------------
>
> Key: JBRULES-1784
> URL: https://jira.jboss.org/jira/browse/JBRULES-1784
> Project: JBoss Drools
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Affects Versions: 4.0.7
> Environment: Windows XP
> Reporter: Dave Sinclair
> Assignee: Mark Proctor
>
> I have the following rule that should fire for each element in the set from $Chassis
> rule 'ChassisSlotCollectionFieldWalker'
> agenda-group "Traversal"
> no-loop true
> dialect "mvel"
> when
> $Chassis : Chassis ()
> $SlotElement : Slot () from $Chassis.slots
> then
> insert($SlotElement);
> end
> But whenever I insert a Chassis into memory, I get the following expcetion
> Caused by: java.lang.ClassCastException: com.sungard.ams.persistence.model.objects.BladeServerSlot cannot be cast to com.sungard.ams.persistence.model
> .objects.BladeChassis$$EnhancerByCGLIB$$e5aeb667
> at ASMAccessorImpl_248066451222360199260.getValue(Unknown Source)
> at org.mvel.ast.VariableDeepPropertyNode.getReducedValueAccelerated(VariableDeepPropertyNode.java:22)
> at org.mvel.ast.PropertyASTNode.getReducedValueAccelerated(PropertyASTNode.java:21)
> at org.mvel.MVELRuntime.execute(MVELRuntime.java:90)
> at org.mvel.CompiledExpression.getValue(CompiledExpression.java:111)
> at org.mvel.MVEL.executeExpression(MVEL.java:252)
> at org.drools.base.dataproviders.MVELDataProvider.getResults(MVELDataProvider.java:55)
> at org.drools.reteoo.FromNode.assertTuple(FromNode.java:68)
> at org.drools.reteoo.SingleTupleSinkAdapter.createAndPropagateAssertTuple(SingleTupleSinkAdapter.java:55)
> at org.drools.reteoo.LeftInputAdapterNode.assertObject(LeftInputAdapterNode.java:116)
> at org.drools.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:318)
> at org.drools.reteoo.ObjectTypeNode.assertObject(ObjectTypeNode.java:162)
> at org.drools.reteoo.Rete.assertObject(Rete.java:175)
> at org.drools.reteoo.ReteooRuleBase.assertObject(ReteooRuleBase.java:192)
> at org.drools.reteoo.ReteooWorkingMemory.doInsert(ReteooWorkingMemory.java:71)
> at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:911)
> at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:883)
> at org.drools.base.DefaultKnowledgeHelper.insert(DefaultKnowledgeHelper.java:67)
> at org.drools.base.DefaultKnowledgeHelper.insert(DefaultKnowledgeHelper.java:61)
> BladeServerSlot is a subclass of Slot and is contained in a Chassis.
> Here is the debug from insertion
> [ObjectInserted: handle=[fid:1:1:ClassName:[BladeChassis], GUID:[CF0A4E63-94B2-8505-9CD2-56B4CBB52A01], Revision#:[10], Creation Date:[2008-09-24 11:2
> 5:59.687], ModDate:[2008-09-24 14:44:55.859], ModBy:[david.sinclair], CommonName:[blade chassis 1]]; object=ClassName:[BladeChassis], GUID:[CF0A4E63-9
> 4B2-8505-9CD2-56B4CBB52A01], Revision#:[10], Creation Date:[2008-09-24 11:25:59.687], ModDate:[2008-09-24 14:44:55.859], ModBy:[david.sinclair], Commo
> nName:[blade chassis 1]]
> and before activation fired
> [BeforeActivationFired(0): rule=ChassisSlotCollectionFieldWalker; tuple=[fid:3:3:ClassName:[BladeServerSlot], GUID:[AE26671E-BF95-B58A-A6AB-DA13BEED6B
> D5], Revision#:[0], Creation Date:[2008-09-24 16:10:11.062], ModDate:[2008-09-24 16:10:11.062], ModBy:[david.sinclair], CommonName:[blade server slot
> 2]]
> [fid:1:1:ClassName:[BladeChassis], GUID:[CF0A4E63-94B2-8505-9CD2-56B4CBB52A01], Revision#:[10], Creation Date:[2008-09-24 11:25:59.687], ModDate:[2008
> -09-24 14:44:55.859], ModBy:[david.sinclair], CommonName:[blade chassis 1]]
> ]
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list