Я создал один process-sampleFlow.bpmn2 (пример правила, добавленный в бизнес-задачу), и тот же процесс определен в kModule.xml.Теперь в простом классе pojo из метода main с kieContainer он может инициировать процесс и запускать соответствующее правило.но только когда правила и процесс хранятся в одном пакете.Не уверен, что я что-то упустил.
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
Заранее спасибо.