盘古BPM体验地址    盘古BPM交流群盘古BPM交流群号:963222735

flowable连线名称不显示bug修复说明

分享牛 4555℃

flowable连线不显示bug修复说明

在flowable6.4版本我(分享牛)修复了流程图中连线不显示的bug。由于Flowable官方对于这个bug的缘由很清楚,所以很顺利的将该bug修复代码合并到官方代码了,注意:flowable6.4之前的版本还是有这个bug,flowable6.4之后的代码(包含flowable6.4)就没有这个bug了。具体使用以及说明在下面罗列一下。
    我们在设置流程的时候,可以定义连线信息,如果使用eclipse插件或者idea插件绘制连线的时候,生成的xml信息大概是下面的样子:
<bpmndi:BPMNEdge bpmnElement="flow1" id="BPMNEdge_flow1">
<omgdi:waypoint x="137.0" y="190.0"></omgdi:waypoint>
<omgdi:waypoint x="137.0" y="137.0"></omgdi:waypoint>
<omgdi:waypoint x="322.0" y="137.0"></omgdi:waypoint>
<omgdi:waypoint x="322.0" y="180.0"></omgdi:waypoint>
bpmndi:BPMNLabel
<omgdc:Bounds height="13.0" width="100.0" x="140.0" y="151.0"></omgdc:Bounds>
</bpmndi:BPMNLabel>

</bpmndi:BPMNEdge>

注意:使用eclipse插件或者idea插件绘制连线的时候会生成bpmndi:BPMNLabel标签。使用在线设计器也就是modeler并不会生成这个标签。所以就有连线名称不显示的问题。

考虑到后续modeler可能会增加bpmndi:BPMNLabel>标签,因为我在流程引擎配置类ProcessEngineConfiguration中增加了一个开关属性如下所示:

protected boolean drawSequenceFlowNameWithNoLabelDI = false;

注意:drawSequenceFlowNameWithNoLabelDI默认是false,如果你的连线名称不显示,记得设置这个属性为true就好了。


当然了,bpmn图像生成类ProcessDiagramGenerator我也增加了这个参数如下所示:

public InputStream generateDiagram(BpmnModel bpmnModel, String imageType, List<String> highLightedActivities, List<String> highLightedFlows,
String activityFontName, String labelFontName, String annotationFontName, ClassLoader customClassLoader, double scaleFactor,boolean drawSequenceFlowNameWithNoLabelDI);

大家在生成图片的过程中,如果不能正常的显示连线的名称,请确保你是否将drawSequenceFlowNameWithNoLabelDI设置为了true。

转载请注明:分享牛 » flowable连线名称不显示bug修复说明