如何在jbpm5的ProcessEventListener中获取StatefulKnowledgeSession的当前StatefulKnowledgeSession表单列表?

How to get current StatefulKnowledgeSession form list of StatefulKnowledgeSessions in ProcessEventListener in jbpm5?

我的要求是当 Jbpm 工作流程完成时,我想在 ProcessEventListener 的 afterProcessCompleted() 中关闭一个会话,所以现在的问题是如何从 StatefulKnowledgeSessions 列表中获取当前的 StatefulKnowledgeSession。

示例:

afterProcessCompleted(){

//Get list of StatefulKnowledgeSessions.  

//want current StatefulKnowledgeSession.

}

请尽快给出您宝贵的答案。

假设您在名为 event 的参数中有 org.kie.api.event.process.ProcessEvent,您是否尝试过:

org.jbpm.process.instance.ProcessInstance pi =(org.jbpm.process.instance.ProcessInstance)event.getProcessInstance(); org.kie.internal.runtime.StatefulKnowledgeSession session=(org.kie.internal.runtime.StatefulKnowledgeSession)pi.getKnowledgeRuntime();

试一试,看看是否有效。 (我怀疑在 afterProcessCompleted 事件中,processInstance 和 knowledgeRuntime 之间的关联可能已经被切断,所以我很想看看它是否适合你)