这里是spring2.5 用spring jdbc template的方式整合osworkflow2.8,数据库是mysql的。整合过后,由spring来管理osworkflow的配置类,由于是用spring jdbc才操作osworkflow的数据库,所以datasource可以纳入spring统一控制。
下面是spring整合osworkflow的配置文件:
用到了一些自己扩展的类(是网上一个牛人的写的,我只抽取了mysql jdbc那部分)见下图的结构:
代码依次如下:
DefaultJDBCTemplateConfigurationProvider.java
JDBCTemplateConfigurationProvider.java
JDBCTemplatePropertySet.java
JDBCTemplatePropertySetDAO.java
JDBCTemplatePropertySetDAOImpl.java
DefaultJDBCTemplatePropertySetDelegate.java
JDBCTemplateWorkflowStore.java
MySQLTemplateWorkflowStore.java
要注意配置文件里,spring关于osworkflow事务的aop配置,一定对应扩展的类,否则流程过程中的sql语句不能即使的执行,配了就完全ok了。
下面是数据库的sql,我把原数据库里的用户权限的3个表去了,这个可以用自己的,用它的好不爽。
对了还有个propertyset.xml文件:
至于自定义的流程的xml就参看osworkflow官方的例子吧,这样配置好以后osworkflowConfiguration就成为了spring的bean了可以注入了,当然也可以把baseWorkflow也配置成bean,进行注入。
最后提供一个svn:http://xeducation.googlecode.com/svn/trunk,这里是一个spring2.5+hibernate3.x+struts2.1.x+osworkflow2.8的一个空架子,可以运行的。注释也写的比较明白。(myeclipse的工程)
有兴趣的可以当下来看看。