Bug 1248978

Summary: Process fails to open if dataoutput is linked to a process variable which doesn't exist
Product: [Retired] JBoss BPMS Platform 6 Reporter: Jeremy Lindop <jlindop>
Component: jBPM DesignerAssignee: Tihomir Surdilovic <tsurdilo>
Status: CLOSED NOTABUG QA Contact: Kirill Gaevskii <kgaevski>
Severity: high Docs Contact:
Priority: medium    
Version: 6.2.0CC: kverlaen
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-12-10 11:55:13 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jeremy Lindop 2015-07-31 09:16:03 UTC
Description of problem:
Changing the name of a process variable, or deleting a process var which is referenced as the Target of a DataOutput causes the process to be un-openable.

Steps to Reproduce:
1. Create a new BP
2. Add a process variable "myvar", datatype "String"
3. Add a user task
4. Add a data output called "myoutput", datatype "String" and set target to "myvar"
5. Save the process
6. Optional: If the process is not completely refreshed when you save it in the version being tested, close and re-open the process
7. Change the name of the process variable from "myvar" to "yourvar"
8. Save the process
9. Optional: If the process is not completely refreshed when you save it in the version being tested, close and re-open the process
10. At this point, the process cannot be opened and is shown in the XML editor.

The problem is caused by <bpmn2:targetRef>myvar</bpmn2:targetRef> in the <bpmn2:dataOutputAssociation> which refers to the old process variable.

I think this error happens for other DataOutputs too, e.g. on Start Events, CatchIntermediateEvents with DataOutput, CallActivity.

Comment 2 Jeremy Lindop 2015-12-10 11:55:13 UTC
This behaviour is by design.