欢迎使用普元产品知识库,本知识库包含普元应用开发平台EOSPlatform,流程平台BPS,企业服务总线ESB,微服务平台Microservice,运维管理平台Devops,数据集成平台DI

页面树结构

欢迎使用普元文档库

Skip to end of metadata
Go to start of metadata

【问题描述】

EOS Platform7.6 人工活动1参与者配置的是参与者规则,完成人工活动启动人工活动1时,报错:

Caused by: ErrCode: 21042006 Message: 通过业务规则获取参与者出错  

at com.primeton.workflow.engine.scheduler.event.handler.activity.ActivityExecuterHelpPartiListUtil.getParticipantFromBizRule(ActivityExecuterHelpPartiListUtil.java:364)  

at com.primeton.workflow.engine.scheduler.event.handler.activity.ActivityExecuterHelpPartiListUtil.getBasicPartiList(ActivityExecuterHelpPartiListUtil.java:307)  

at com.primeton.workflow.engine.scheduler.event.handler.activity.ActivityExecuterAction.execute(ActivityExecuterAction.java:271)  

......

Caused by: ErrCode: 21000000 Message: NULL  

at com.primeton.bps.rules.codegen.participantrule.catalogf7d8df18a7444f94a9c5a1b03dfa57e2.RPc6423dbb5285467e8227ffc9806420e0.invoke(RPc6423dbb5285467e8227ffc9806420e0.java:384)  

......

Caused by: java.lang.Exception: 方法没找到:com.gtdecoration.platform.workflow.framework.WFParticipantManager.initActDefineParticipants  

at com.primeton.bps.rules.codegen.participantrule.catalogf7d8df18a7444f94a9c5a1b03dfa57e2.RPc6423dbb5285467e8227ffc9806420e0.invoke(RPc6423dbb5285467e8227ffc9806420e0.java:341)  ... 96 more

参与者规则实现:

com.gtdecoration.platform.workflow.framework.WFParticipantManager.initActDefineParticipants 是参与者规则调用的方法,实现:

public List<WFParticipant> initActDefineParticipants(long processDefID, String actDefID)

{   if (processDefID == 0 || StringUtil.isBlank(actDefID)) {    

processDefID = IBPSInvocationContext.INSTANCE.getCurrentProcessInst().getProcessDefID();    

actDefID = IBPSInvocationContext.INSTANCE.getCurrentActivityDefine().getId();   

}   

IWFParticipantService service = new DefinedWFParticipantServiceImpl().setProcessDefID(processDefID).setActDefID(actDefID);   

return service.queryActParticipants();  }

参与者规则配置:

 

【问题原因】

参数不匹配导致,红色框内的流程定义ID和活动定义编号都是String类型的,而initActDefineParticipants(long processDefID, String actDefID) processDefID是long类型的,不匹配,将processDefID改为String类型的,不再报错