0

我创建了一个 process-sampleFlow.bpmn2(在业务任务中添加的示例规则),并且在 kModule.xml 中定义了相同的流程。现在,在带有 kieContainer 的 main 方法中的一个简单 pojo 类中,它能够启动流程并触发相关规则。但仅当规则和流程被保存在同一个包中时。不知道我是否遗漏了什么。

POJO类:

KieServices ks = KieServices.Factory.get();
                KieContainer kContainer = ks.getKieClasspathContainer();
                KieSession kSession = kContainer.newKieSession("ksession-process");
                Participant request = new Participant();
                request.id="123";
                kSession.insert(request);
                kSession.startProcess("defaultPackage.sampleRuleFlow");
                kSession.fireAllRules();

kModule.xml

<kmodule xmlns="http://jboss.org/kie/6.0.0/kmodule">
  <kbase name="process" packages="process">
        <ksession name="ksession-process"/>
    </kbase>
</kmodule>

规则 :

rule sample1
ruleflow-group "group1"
when 
then 
System.out.println( "Sample1" );
end


rule sample2
ruleflow-group "group2"
when 
then 
System.out.println( "Sample2" );
end

提前致谢。

4

0 回答 0