Rules fail to fire if we create a different ksession through custom workItemHandler in BPMS 6.0.3
Issue
We are using custom workItemHandlers used in BPMN processes. These workItemHandlers are registered in the kmodule.xml, like as:
<kmodule xmlns="" xmlns:xsi="">
<kbase name="kbase" default="true" eventProcessingMode="stream" equalsBehavior="identity">
<ksession name="ksession" type="stateful" default="true" clockType="realtime">
<workItemHandlers>
<workItemHandler type="new com.sample.test.handler.TestHandler()" name="Test"></workItemHandler>
<workItemHandler type="new com.sample.test.handler.TestHandler2(ksession)" name="Test2"></workItemHandler>
</workItemHandlers>
</ksession>
</kbase>
</kmodule>
The first handler uses a new ksession created from kieContainer based on a specific release Id:
KieServices kServices = KieServices.Factory.get();
ReleaseId releaseId = kServices.newReleaseId("com.sample.xyz", "test-test", "1.0");
KieContainer kieContainer = kServices.newKieContainer(releaseId);
KieBaseConfiguration kbaseConfig = kServices.newKieBaseConfiguration();
KieBase kbase = kieContainer.newKieBase(kbaseConfig);
KieSessionConfiguration ksessionConfig = kServices.newKieSessionConfiguration();
ksessionConfig.setOption(ClockTypeOption.get("realtime"));
session = kbase.newKieSession(ksessionConfig, null);
...
session.fireAllRules();
The issue is with the first handler,after the call session.fireAllRules() rules from decision table rules don't get fired. The second handler works fine without issue.
Environment
- Red Hat JBoss BPM Suite
- 6.0.x
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.