本文共 1544 字,大约阅读时间需要 5 分钟。
1、模板定义xml中增加如下内容(节点标签下extensionElements增加自定义属性(标签)):
2、自定义任务解析器CustomUserTaskJsonConverter extends UserTaskJsonConverter
重写convertElementToJson方法,增加以下内容
重写convertJsonToElement方法
@Override protected FlowElement convertJsonToElement(JsonNode elementNode, JsonNode modelNode, MapshapeMap) { UserTask flowElement = (UserTask) super.convertJsonToElement(elementNode, modelNode, shapeMap); LOGGER.info("进入自定义属性解析"); if(flowElement instanceof UserTask){ String customSetting = getPropertyValueAsString("customSetting",elementNode); if(StringUtils.isNotBlank(customSetting)){ LOGGER.info("新增自定义属性[customSetting]="+customSetting); ExtensionAttribute ea1 = generateExtensionAttribute("customSetting",customSetting); flowElement.addAttribute(ea1); }// addExtensionElement("customSetting", customSetting, flowElement); } return flowElement; } public static ExtensionAttribute generateExtensionAttribute(String key, String val){ ExtensionAttribute ea = new ExtensionAttribute(); ea.setNamespace("http://flowable.org/bpmn"); ea.setName(key); ea.setNamespacePrefix("custom"); ea.setValue(val); return ea; }
3、自定义CustomBpmnJsonConverter 继承BpmnJsonConverter
public class CustomBpmnJsonConverter extends BpmnJsonConverter { static { convertersToBpmnMap.put(STENCIL_TASK_USER,CustomUserTaskJsonConverter.class); }}
转载地址:http://phwbf.baihongyu.com/