A BPMN implementation is not updated after change of a Kie project. It works fine for Drools. It is necessary to mention that a BPMN implementation is not updated once the component is invoked. So, it is possible to have two BPMN components based on the same implementation and each of them having different behaviour - the first was invoked before update of Kie project, the second was invoked after update of Kie project. A reproducer based on the switchyard-bpm-service quickstart is attached.
How to reproduce:
- install the Kie project to maven repo: mvn install
- deploy the modified switchyard-bpm-service: mvn install -Pdeploy -DskipTests
- invoke the first BPMN component: mvn exec:java
- you will see this message in the server log: ********** Inventory user: trohovsk / incoming messageId: ID-merkur-37675-1406282701955-0-19 **********
- modify and install the Kie project
- change println message in Inventory's On Entry Script
- mvn install
- invoke the first BPMN component again: mvn exec:java
- you should see the modified message, however you will see the original message
- invoke the second BPMN component: mvn exec:java -Dexec.args="2"
- you will see the modified message: ********** CHANGED Inventory user: trohovsk / incoming messageId: ID-merkur-37675-1406282701955-0-10 **********