Rules fail to fire if we create a different ksession through custom workItemHandler in BPMS 6.0.3

Solution Unverified - Updated -

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 of over 48,000 articles and solutions.

Current Customers and Partners

Log in for full access

Log In
Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.