Java 在多次执行中重用StatefulKnowledgeSession

Java 在多次执行中重用StatefulKnowledgeSession,java,drools,Java,Drools,在drools中尝试在一个状态下执行两次KnowlegDeSession时出现问题: final KnowledgeBase kbase = knowledgeAgent.getKnowledgeBase(); final StatefulKnowledgeSession session = kbase.newStatefulKnowledgeSession(); session.getAgenda().getAgendaGroup("Third").setFocus(); session.ge

在drools中尝试在一个状态下执行两次KnowlegDeSession时出现问题:

final KnowledgeBase kbase = knowledgeAgent.getKnowledgeBase();
final StatefulKnowledgeSession session = kbase.newStatefulKnowledgeSession();
session.getAgenda().getAgendaGroup("Third").setFocus();
session.getAgenda().getAgendaGroup("Second").setFocus();
session.getAgenda().getAgendaGroup("First").setFocus();
session.execute(CommandFactory.newBatchExecution(commands));
//This execution doesn't work:
session.execute(CommandFactory.newBatchExecution(anothersCommands));
session.dispose();
第二次处决永远不会发生,有什么不好?我可以在多次执行中重用drools会话吗

我用的是drools 5.6.0.Final


关于

必须查看命令(包括插入的事实)和规则才能了解为什么第二次执行没有任何结果。-但是我可以马上告诉你,三个setFocus调用一个接一个地调用是没有意义的:只有最后一个议程组对两个命令执行都处于活动状态。必须查看命令(包括插入的事实)和规则,才能了解为什么第二次执行没有任何结果。-但是我可以马上告诉你,三个setFocus调用被一个接一个地调用是没有意义的:只有最后一个议程组对两个命令执行都是活动的。