Activiti权威指南
上QQ阅读APP看书,第一时间看更新

3.4 校验BpmnModel实例对象

代码3-8中手工构建了BpmnModel实例对象并对其进行部署,但也同时面临一个问题,怎么才能确保该实例对象转换之后的XML格式是正确的呢?接下来详细讲解如何校验BpmnModel实例对象,校验该实例对象需要使用ProcessValidatorFactory类,该类位于activiti-process-validation-5.21.0.jar中,具体实现如代码清单3-9所示。

代码清单3-9 DeploymentBuilderTest.java

在上述代码中,第2行获取BpmnModel实例对象,该实例对象的构造过程可以参考3.3节。第3行直接实例化ProcessValidatorFactory类,第4~5行通过该工厂类创建流程验证器对象defaultProcessValidator,第6行委托defaultProcessValidator对象中的validate方法校验bpmnModel对象,该方法的返回值为ValidationError集合(封装验证之后的信息),如果该集合长度为0则说明bpmnmodel对象已经成功通过校验,否则没有验证通过。

流程文档的格式验证是必不可少的一个重要环节,如果流程文档部署之前开启了格式校验,则可以避免将错误或者不可使用的流程文档部署到引擎表中,从而规避一系列可能出现的问题,防患于未然。