I made the change to use the MapBasedPersistence with the underlying Map coming from Hazelcast. That seems to work but sometimes I get the following error. I am not sure how that happens but it does when i try to resume a session. I a try the resume a second time it goes through without issue.
[2011-12-29 00:00:10.769] DEBUG [58] com.uluru.test.jbpm.KnowledgeSessionStore - saving session info org.drools.persistence.info.SessionInfo@59961a07
[2011-12-29 00:00:10.798] ERROR [313] org.drools.persistence.SingleSessionCommandService - Could not commit session
java.lang.NullPointerException
at org.jbpm.workflow.instance.impl.WorkflowProcessInstanceImpl.setState(WorkflowProcessInstanceImpl.java:251)
at org.jbpm.marshalling.impl.AbstractProcessInstanceMarshaller.readProcessInstance(AbstractProcessInstanceMarshaller.java:382)
at org.jbpm.persistence.processinstance.ProcessInstanceInfo.getProcessInstance(ProcessInstanceInfo.java:134)
at org.jbpm.persistence.processinstance.JPAProcessInstanceManager.getProcessInstance(JPAProcessInstanceManager.java:64)
at org.jbpm.process.instance.ProcessRuntimeImpl.getProcessInstance(ProcessRuntimeImpl.java:190)
at org.drools.common.AbstractWorkingMemory.getProcessInstance(AbstractWorkingMemory.java:1113)
at org.drools.impl.StatefulKnowledgeSessionImpl.getProcessInstance(StatefulKnowledgeSessionImpl.java:283)
at org.jbpm.persistence.processinstance.JPASignalManager.signalEvent(JPASignalManager.java:24)
at org.jbpm.process.instance.ProcessRuntimeImpl.signalEvent(ProcessRuntimeImpl.java:355)
at org.drools.impl.StatefulKnowledgeSessionImpl.signalEvent(StatefulKnowledgeSessionImpl.java:321)
at org.drools.command.runtime.process.SignalEventCommand.execute(SignalEventCommand.java:91)
at org.drools.persistence.SingleSessionCommandService.execute(SingleSessionCommandService.java:292)
at org.drools.command.impl.CommandBasedStatefulKnowledgeSession.signalEvent(CommandBasedStatefulKnowledgeSession.java:200)
at com.test.platform.jbpm.ExecutionController.resume(ExecutionController.java:63)