-
Type:
Bug Report
-
Resolution: Won't Fix
-
Priority:
L3 - Default
-
None
-
Affects Version/s: 7.10.6
-
Component/s: bpmn model api
-
None
-
Environment:java-api
windows
Creating a BPMN-Model via (Fluent) Java-API there is an layout issue for "closing" gateways.
If you have different long branches, you have to start with the longest one to achieve a feasible layout.
In other cases you end up with a little poor layout. (see screenshot in attachment)
Is there any other possibility to control the layout for these gateway cases?
Example code (based on Fluent-Api example):
BpmnModelInstance modelInstance = Bpmn.createProcess()
.name(pdtName)
.startEvent()
.exclusiveGateway("fork")
.name("Invoice approved?")
//--- Condition with one Tasks
.condition("no", "${!approved}")
.userTask()
.name("Review Invoice")
// - Add join Gateway
.exclusiveGateway("join")
.moveToNode("fork")
//--- Condition with two Tasks
.condition("yes", "${approved}")
.userTask()
.name("Prepare Bank Transfer")
.camundaCandidateGroups("accounting")
.serviceTask()
.name("Archive Invoice")
.camundaClass("org.camunda.bpm.example.invoice.service.ArchiveInvoiceService")
.connectTo("join")
.moveToNode("fork")
//--- Condition with one Tasks
.condition("unknown", "${!unknown}")
.userTask()
.name("Do something unkown")
.connectTo("join")
// --- End Task
.moveToNode("join")
.userTask()
.name("Do end work")
.endEvent()
.name("End")
.done();
// Validate Modell
Bpmn.validateModel(modelInstance);
...