报错:java.lang.ClassCastException: org.activiti.image.impl.DefaultProcessDiagramGenerator cannot be cast to com.finapla.activiti.config.ICustomProcessDiagramGenerator
ICustomProcessDiagramGenerator diagramGenerator = (ICustomProcessDiagramGenerator) processEngine.getProcessEngineConfiguration().getProcessDiagramGenerator();
强制类型转换出问题,ICustomProcessDiagramGenerator的实现类继承了
DefaultProcessDiagramGenerator,也实现了
ProcessDiagramGenerator接口
最终发现,配置
SpringProcessEngineConfiguration时,没有设置ProcessDiagramGenerator属性,导致转换出现问题
@Bean
public SpringProcessEngineConfiguration springProcessEngineConfiguration() {
SpringProcessEngineConfiguration spec = new SpringProcessEngineConfiguration();
spec.setDataSource(dataSource);
spec.setTransactionManager(platformTransactionManager);
spec.setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);
// 解決工作流生成图片乱码问题
spec.setActivityFontName("宋体");
spec.setAnnotationFontName("宋体");
spec.setLabelFontName("宋体");
spec.setProcessDiagramGenerator(customProcessDiagramGenerator);
return spec;
}
本文详细介绍了在使用Activiti工作流引擎时遇到的流程图生成错误:ClassCastException,并提供了解决方案。通过正确配置SpringProcessEngineConfiguration的ProcessDiagramGenerator属性,避免了类型转换错误,确保了流程图的正常生成。
1万+

被折叠的 条评论
为什么被折叠?



