Uploaded image for project: 'Drools'
  1. Drools
  2. DROOLS-2145

Kie-Spring: listeners on KieSession not called when batch is used

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • None
    • None
    • integration
    • None
    • 2017 Week 45-46
    • NEW
    • NEW

    Description

      Description of problem:
      When using the following configuration in Spring context, the listener is not called when the rule triggered by the batch fires:

      <kie:ksession name="ksession1">
      <kie:ruleRuntimeEventListener ref="mock-wm-listener"/>
      <kie:batch>
      <kie:insert-object ref="person"/>
      <kie:fire-all-rules/>
      </kie:batch>
      </kie:ksession>

      The listener is triggered when a fact is inserted into the KieSession and fireAllRules() called in the test code (not in the batch).

      The fact seems to be inserted into WM and rules fire when the batch is used. This leads to a suggestion that kie-spring might register listeners after it executes the batch (but I have not verified it).

      Please see PR with unit test for details.

      Version-Release number of selected component (if applicable):
      BRMS 6.2.1

      How reproducible:
      always

      Steps to Reproduce:
      1. run org.kie.spring.KieSpringListenersBatchTest

      Actual results:
      The test fails.

      Expected results:
      The test succeeds.

      Attachments

        Activity

          People

            mfusco@redhat.com Mario Fusco
            mfusco@redhat.com Mario Fusco
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: