public void initStartDisposeAndLoadSession() { try { EntityManager em = txm.getEntityManagerFactory().createEntityManager(); // create new ksession with kstore KieSession ksession = kstore.newKieSession(kbase, null, getEnvironment()); sessionId = ksession.getId(); logger.info("\n\tSession id: " + sessionId + "\n"); ksession.getWorkItemManager().registerWorkItemHandler("testWorkItemHandler", workItemHandler); ksession.startProcess("timer-flow", null); Thread.sleep(4000); ksession.dispose(); } catch (Exception ex) { throw new IllegalStateException("The endTheProcess method has been interrupted", ex); } }