JBPM创建数据库,流程定义以及发布学习笔记
2010-03-12 11:31
330 查看
建立JBPM数据库支持
直接使用SQL脚本jbpm-starters-kit-3.1.4/jbpm-db/build下有JBPM支持的数据库的脚本,利用oracle/scripts/oracle.create.sql创建JBPM所需要的数据表。
使用ANT创建数据库脚本
刚开始研究JBPM准备建ORACLE数据库时,该文件夹下并没有oracle建表脚本。在网上查了资料后发现可以利用ANT先建立脚本,在使用脚本创建数据表。
第一、将jbpm-starters-kit-3.1.4文件下原有的jbpm文件夹改为jbpm.3(主要是因为build.xml文件中使用的是jbpm.3这个名称,该文件是ANT需要使用的XML定义文件)。
第二、修改D:/jbpm-starters-kit-3.1.4/jbpm.3/build.properties。需要修改的就是其中ant.home 和jbpm.home的值。(.properties扩展名的文件是JAVA中的项目配置文件 数据格式为object=value,java.util的jar包下有Properties类负责解析 )。
第三、在D:/jbpm-starters-kit-3.1.4/jbpm-db/oracle/lib文件夹下放入oracle的JDBC驱动包。该包可以在oracle安装路径下的JDBC/LIB中找到。Oracle的JDBC驱动包名为classes12.jar。
第四、在命令行程序中进入到D:/jbpm-starters-kit-3.1.4/jbpm-db目录下执行 ant oracle.scripts进行脚本生成。最终生成目录为D:/jbpm-starters-kit-3.1.4/jbpm-db/build/oracle/scripts。原本使用JDK6.0的时候执行ANT命令会失败,然后将JDK版本降为1.5后就可以正常生成。可能原因是JDK6.0废弃了一些在程序中使用到的方法导致的。
第五、执行脚本创建ORACLE脚本。
在MyEclipse中加载JBPM插件
第一、D:/jbpm-starters-kit-3.1.4/jbpm-designer/jbpm-gpd-feature/eclipse下的所有文件夹复制到D:/MyEclipse 6.0/eclipse下。
第二、在命令行程序,进入到D:/MyEclipse 6.0/eclipse目录,然后执行eclipse –clean即可加载JBPM插件。
第三、通过eclipse创建JBPM工程,选择如下图的Process Project工程,然后选择jbpm.3作为该工程的JBPM CORE。然后就可以进行流程定义。
将JBPM工程移植到Web工程中
首先建立JBPM工程和WEB工程,然后只需将JBPM 的流程定义文件以及配置文件和JAR复制到WEB工程中即可。
发布流程定义
JBPM发布流程有2种方式,第一种通过编程的方式发布;第二种就是部署JBPM服务然后通过该服务发布流程。
通过编程发布
String path ="流程定义的XML 路径";
//获取JBPM上下文对象
JbpmContext context =
JbpmConfiguration.getInstance().createJbpmContext();
//通过解析流程定义的XML文件获取流程定义
ProcessDefinition pd = ProcessDefinition.parseXmlString(path);
//通过上下文发布流程定义到数据库
context.deployProcessDefinition(pd);
//关闭JBPM上下文对象同时提交事务
context.close();
通过JBPM服务发布
首先在jbpm-starters-kit-3.1.4/jbpm-server/server/jbpm/deploy/文件夹下找到jbpm.war并将其解压缩,然后将解压后的文件夹复制到Tomcat 6.0/webapps/文件夹下。最后将JBPM所需要的JAR文件复制到Tomcat 6.0/webapps/jbpm/WEB-INF/lib下。
启动TOMCAT,查看启动日志,如果没有报错则表示部署成功。然后打开你的eclipse中的流程定义图形化工具。选择左下角的Deployment然后连接你部署的JBPM服务进行发布。将jbpm-console改为 你发布的站点名称。然后通过
Test Conncetion 来测试连接。最后通过Deploy Process Archive来发布到数据库中。
Jar包
可能有多余,或者版本低的。(我部署的JBPM服务可以发布流程但是访问页面会报错。)
相关文章推荐
- SQL Server学习笔记1:如何使用软件以及创建第一个数据库
- Greenplum+Hadoop学习笔记-14-定义数据库对象之创建与管理模式
- head first C#学习笔记:如何创建事件以及事件处理程序
- Python 脚本学习笔记(五)集中式病毒扫描,端口扫描以及分段数据库操作
- 微软企业库4.1学习笔记(二)各功能之间的依赖关系以及对象创建
- mysql 学习笔记二 (mysql 创建数据库和表)
- MCSE 2003学习笔记 九 通过IIS来发布一个WEB和FTP以及MAIL
- jBPM-jPDL学习笔记——流程设计与控制
- Androidx学习笔记(22)-- 动态创建TextView展示数据库的数据
- Spring学习笔记 关于Bean定义的重用-使用abstract以及parent标签属性
- CXF学习笔记一:如何创建、发布和访问基于CXF的服务
- Activiti学习笔记四 流程定义的管理(一)
- EF Code First学习笔记:数据库创建
- SSM框架的流程学习笔记以及每一步容易出错的地方
- Activiti学习笔记三:管理流程定义
- 微软企业库4.1学习笔记(二)各功能之间的依赖关系以及对象创建
- spring in action 学习笔记三:对spring 容器的理解,以及如何利用AnnotationConfigApplicationContext这个容器创建对象
- 430的VS2015单文档MFC学习笔记之创建以及添加按钮
- 包子的 oracle 学习笔记---创建数据库