2023年7月24日发(作者:)
flowable修改运⾏中的实例流程flowable修改运⾏中的实例流程问题今天项⽬中发现有流程流转时找不到serviceTask⾥指定的classname,经排查发现是前⼏天更改了bpmn,将⾥⾯的delegate类路径全给改了,所以之前运⾏中的流程都找不到包了,导致报错:解决思路摆在眼前两条路,第⼀条是把运⾏中的流程全都给改了,第⼆条是在原路径中加上delegate类。第⼆条路看起来偷懒、简单,但是仔细⼀看,我的delegate都是注⼊的bean,这样会导致有重复name的bean。于是采⽤第⼀种⽅法,解决。下⾯上测试代码。代码 @Test public void illegalProcessMigrateTest() { List illegalList = NotComplete(null, "2020-11-18"); Deployment deploy = Deployment(). addClasspathResource("processes/").deploy(); int success = 0, fail = 0; ProcessDefinition def = ProcessDefinitionQuery().deploymentId(()).singleResult(); for (Illegal illegal : illegalList) { String processId = cessId(); try { ProcessInstance pi = ProcessInstanceQuery().processInstanceId(processId).singleResult(); ProcessInstanceMigrationValidationResult validationResult = ProcessInstanceMigrationBuilder() .migrateToProcessDefinition(()) .validateMigration(cessInstanceId()); ProcessInstanceMigrationBuilder() .migrateToProcessDefinition(()) .migrate(cessInstanceId()); boolean isMigrationValid = ationValid(); if (isMigrationValid) { success++; } else { fail++; } } catch (Exception e) { tackTrace(); fail++; } } ("违章:更新⽼流程实例流程,成功:{}个,失败:{}个", success, fail); }总结etask的delegate类⾥尽量还是放⼀些基础功能,不要轻易修改(也不要轻易移动~~~),⼀些脚本可以通过script task来执⾏。2.碰到问题,百度上找不到,直接上官⽹找。参考
发布者:admin,转转请注明出处:http://www.yc00.com/web/1690212989a315734.html
评论列表(0条)