Hide Forgot
Created attachment 542456 [details] maven web app I have folowing Spring configuration (showing only relevant part): <bean id="debug-wm-listener" class="org.drools.event.DebugWorkingMemoryEventListener" /> <drools:ksession id="statefulSession" type="stateful" kbase="kbase1"> <drools:workingMemoryEventListener ref="debug-wm-listener"/> </drools:ksession> Configured WM Event listener in knowledge stateful session by Spring. Expecting (at least) one WM Event listener: statefulSession.getWorkingMemoryEventListeners().size() but size is 0. See attachment: build as maven project, then deploy to tomcat, open webapp in browser and click on the second link.
On first sight, looks like KnowledgeSessionDefinitionParser is forgetting to call AbstractKnowledgeSessionBeanFactory.setWorkingMemoryEventListeners(...)
The problem is that the wrong DebugWorkingMemoryEventListener has been used. Instead of: <bean id="debugWorkingMemoryEventListener" class="org.drools.event.DebugWorkingMemoryEventListener" /> it should be: <bean id="debugWorkingMemoryEventListener" class="org.drools.event.rule.DebugWorkingMemoryEventListener" /> I 'll adjust the code so it fails-fast when such wrong configuration happens.
Fail-fast added: https://github.com/droolsjbpm/droolsjbpm-integration/commit/b0c43d545db0235adf8f0969a895b6c746f1e3f2