Details
-
Bug
-
Resolution: Done
-
Major
-
5.5.0.Beta1, 6.0.0.Alpha1, 5.5.0.CR1
Description
When trying to persist (serialize) a session that has an activated agenda, a ClassCastException occurs like this when calling fireAllRules():
java.lang.RuntimeException: Unable to commit transaction
at org.drools.persistence.jta.JtaTransactionManager.commit(JtaTransactionManager.java:182)
at org.drools.persistence.SingleSessionCommandService.execute(SingleSessionCommandService.java:376)
at org.drools.command.impl.CommandBasedStatefulKnowledgeSession.fireAllRules(CommandBasedStatefulKnowledgeSession.java:245)
...
Caused by: java.lang.ClassCastException: java.lang.Boolean cannot be cast to org.drools.spi.Activation
at org.drools.common.ActivationIterator.next(ActivationIterator.java:59)
at org.drools.marshalling.impl.ProtobufOutputMarshaller.writeAgenda(ProtobufOutputMarshaller.java:237)
at org.drools.marshalling.impl.ProtobufOutputMarshaller.serializeSession(ProtobufOutputMarshaller.java:132)
at org.drools.marshalling.impl.ProtobufOutputMarshaller.writeSession(ProtobufOutputMarshaller.java:100)
at org.drools.marshalling.impl.ProtobufMarshaller.marshall(ProtobufMarshaller.java:169)
at org.drools.marshalling.impl.ProtobufMarshaller.marshall(ProtobufMarshaller.java:151)
I'll attach a project that reproduces this error on the next comment