Description of problem: If you set Script language to MVEL on any kind of Task/Activity and then Save/Re-Open the process it will be set back to Java. This will of course break the whole process since the process can't be built because of the 'invalid' OnEntry/OnExit script. Version-Release number of selected component (if applicable): bpms 6.0.x How reproducible: always Steps to Reproduce: 1. Create process START->HUMAN TASK->END 2. Set Script Language of the Human Task to "mvel" 3. Fill the OnEntry script, i.e.: int x = 0; foreach (x : 9) { System.out.print(x); } 4. Save the process / Re-open the process 5. The Script Language is set back to Java - Saving the process again will result in validation errors Actual results: MVEL dialect is always set back to Java after saving/re-opening the process Expected results: MVEL dialect survives the process re-opening Additional info:
In the current build, I couldn't reproduce the problem in full. When I set an 'On Entry Action' on a task, the Script language was saved. However, if an 'On Exit Action' is set on a Task or Sub-Process and the Script Language is set to 'mvel', then when you close and re-open the BP, the Script Language setting was forgotten. This is fixed by master: https://github.com/droolsjbpm/jbpm-designer/commit/2e6f14a332ebfeb7aeb67ef09eb41dcc08589244
I tried this issue with BPMS 6.0.3 CR1 and I got same result as Jeremy (comment #3). If I use both (onEntry and onExit script) then the "Script Language" property is set to 'mvel'. Problem is only with onExit script. Hot fix could be a dummy script for onEntry action.
Verified on 6.2.0.ER1