首先介绍一下activiti:
Activiti 其核心是 BPMN 2.0 的流程引擎。BPMN 是目前被各 BPM 厂商广泛接受的 BPM 标准,全称为 Business Process Model and
Notation,由 OMG 组织进行维护,2011 年 1 月份发布了其 2.0 的正式版。BPMN
2.0 对比于第一个版本,其最重要的变化在于其定义了流程的元模型和执行语义,即它自己解决了存储、交换和执行的问题。这代表着 BPMN 2.0 流程定义模型不仅仅可以在任何兼容 BPMN 2.0 的引擎中执行,而且也可以在图形编辑器间交换。作为一个标准,BPMN 2.0 统一了工作流社区。
1
Activiti 是由 jBPM 的创建者 Tom Baeyens 离开 JBoss 之后建立的项目,构建在开发 jBPM 版本 1 到 4 时积累的多年经验的基础之上,旨在创建下一代的 BPM 解决方案。同时 Activiti 选择了 Apache 许可,一方面是希望 Activiti 能有更长久的生命力,因为它不受任何个人或是公司的控制而是属于整个社区,另一方面更是希望这个宽松的许可能够让 Activiti BPM 引擎和 BPMN2.0 被更广泛的采纳、使用和商业化。
2
对于 Java 开发者来说,Activiti 的首席架构师 Tom Baeyens 曾提到,Activiti 的首个目标就是要获得开发者的青睐。首先它在使用时极为方便,只是个 jar 文件,使用时仅需要将其放在类路径中,当然,Activiti 也可以作为独立服务器的方式使用;同时 Activiti 提供了很多 BPM 高级工具,其中还包括开发了协作工具,使得开发人员、业务人员和运维人员能够更好的协同工作。
我们再来看看客户自己的配置,基本上把访问达梦数据库的部分都修改到位了:
整体项目采用的 springmvc+spring+hibernate 框架进行搭建,单纯的以上配置可以使用达梦数据库,启动没有问题,但是由于项目中需要使用工作流,采用Activiti与spring进行集成,Activiti需要进行数据库配置,Activiti,我们测试并不支持DM数据库,配置以后无法启动,不能进行Activiti工作流的初始工 作,启动项目直接报错。
具体配置文件以下
SHAPE \* MERGEFORMAT
SHAPE \* MERGEFORMAT
SHAPE \* MERGEFORMAT
SHAPE \* MERGEFORMAT
SHAPE \* MERGEFORMAT
SHAPE \* MERGEFORMAT
SHAPE \* MERGEFORMAT
SHAPE \* MERGEFORMAT
SHAPE \* MERGEFORMAT
SHAPE \* MERGEFORMAT
SHAPE \* MERGEFORMAT
SHAPE \* MERGEFORMAT
SHAPE \* MERGEFORMAT
SHAPE \* MERGEFORMAT
SHAPE \* MERGEFORMAT
SHAPE \* MERGEFORMAT
SHAPE \* MERGEFORMAT
SHAPE \* MERGEFORMAT
|
再来看看客户的报错信息:
可以看到数据库已经连上了,报了无效的表或视图名,登录数据库查看发现没有这个表,
很显然表没建上或者建表的脚本报错了,通过sql日志观察发现根本没有执行建表操作,
所以可以判断出这个地方和达梦数据库没有关系,和activiti的配置有关,activiti第一次启动时才需要建表
问一下度娘就知道答案了:
<property
name="databaseSchemaUpdate" value="false" />
--把这个属性中false改成true就可以建表了
<property
name="databaseSchemaUpdate" value="true" />
|
大家可以看到,activiti默认是不支持达梦的,所以我们选择了oracle数据库类型来兼容达梦,上面的问题解决后,建表报错了:
建表脚本里面用到了nvarchar2这种类型,达梦不支持,咋办?
其实很简单,我们打开activiti的jar包,找到oracle的建表脚本,全部改为varchar,改完了把jar包替换掉即可。
上海腾科教育科技有限公司聚焦ICT人才培养和教育服务、培养数字化时代的新型ICT人才、促进良性的ICT人才生态发展,提供面授教育、在线教育、IT人才培养与就业、高校专业共建与实验室建设、企业人才定制培养,以及教育科技领域内的技术开发、咨询、服务以及解决方案,专注高校ICT课程课件研发、基于华为公有云的云实验实训平台建设,致力于ICT技术在高等院校的引进、开发和推广,是一家全国性的专业ICT行业技术认证服务公司。
腾科教育是华为授权的培训合作伙伴,专业提供华为ICT技术架构认证、平台与服务认证、行业服务认证等华为职业认证服务,连续多年荣获华为年度最佳合作伙伴贡献奖、华为优秀战略合作伙伴、上海HCIE精英俱乐部伙伴,连续多年举办腾科技术嘉年华华为专场,并协办华为ICT大赛、华为生态伙伴精英赛伙伴赛分赛场、华为人才双选会上海场等活动和赛事,提供面向华为生态合作伙伴和ICT学员的人才供需双选平台及ICT学员就业通道,培养ICT行业所需创新型、融合型人才。