Description of problem: If I define a data input or a data output in Tasks which are inside of a subprocess or Event nodes then I am not able to find the type of data set after reopening of process. It seems that Designer (in 6.1.0 ERx) does not generate the <itemDefinition> element for each input/output of Task or Event. Version-Release number of selected component (if applicable): 6.1.0 ER4 How reproducible: reopen / reimport some process Steps to Reproduce: 1. create a new process: Start -> Task -> Ad Hoc Subprocess (Task2 -> EndSP ) -> End 2. Create a data output/input for each node (${nodeName}MyVar:Integer) 3. Save process 4. Check that each node contains in DataOutputSet this variable: ...MyVar:Integer 5. Close process 6. Reopen process Actual results: When you check all nodes, you find out these data output sets: - Output: StartMyVar - Output: TaskMyVar:Integer - Output: Task2MyVar - Input: EndSPMyVar - Input: EndMyVar It means that all Event nodes and Task nodes which are places inside of any subprocess are affected . ItemDefinitions which was genereted by Designer: <bpmn2:itemDefinition id="__58A0D637-EE3C-42C8-BB13-77927660F094_TaskMyVarOutputXItem" structureRef="Integer"/> Expected results: The type of the data output / input should be visible after reopenning of process or after reimport it. ItemDefinitions which should be genereted by Designer: <bpmn2:itemDefinition id="..._StartMyVar..." structureRef="Integer"/> <bpmn2:itemDefinition id="..._TaskMyVar..." structureRef="Integer"/> <bpmn2:itemDefinition id="..._Task2MyVar..." structureRef="Integer"/> <bpmn2:itemDefinition id="..._EndSPMyVar..." structureRef="Integer"/> <bpmn2:itemDefinition id="..._EndMyVar..." structureRef="Integer"/> Additional info: The severity was set to high because I found out only one occurence where the designer shows a data type in the Data Editor. My opinion is that type of variable is very important information. By the way, the type of the data input or output is saved by Designer in this attribute: drools:dtype="Integer" Unfortunately, this information is not loaded by Data Editor.
The datatype is not used during process execution and therefore is not stored as part of the process XML yet.
Created attachment 985145 [details] Process 1: all item definitions are present The attached process should be correct.
Created attachment 985148 [details] Process 2: saved process by designer Step to reproduce the attached process: 1. Import 'Process1: ...' 2. Export process from Designer -> View Process sourcess -> Ctrl+A, Ctrl+C, Ctrl+V
Created attachment 985164 [details] Process 1: screenshot of Data Editor This screenshot represents information which an user sets.
Created attachment 985187 [details] Process 2: screenshot of Data Editor (missing data type) This screenshot represents information which an user can see after reopening of the Process 1. The user lost information which he put into Data Editor. My opinion is that the content of Data Editor should be same in both cases. Process 1 contains information about data type in a itemDefinition element and in a drools:type attribute. Process 2 contains information about data type only in a drools:type attribute. The expected behaviour: ----------------------- Data Editor has same content in both cases: - after importing Process 1 - after importing Process 2. Data Editor contains MyVar:Integer.
My opinion is that both processes are valid and both contains same information. Unfortunatelly, jBPM Designer cannot represent Process 2 even if it was created by jBPM Designer. I have to ask why Tasks which are placed directly in the process (the first level: Start -> Task -> End) are not affected by this issue even if its data type is not used during process execution.
This is fixed in 6.2.ER5 *** This bug has been marked as a duplicate of bug 1247105 ***