tomcat+mysql+jbpm配置工作流(1)

tomcat+mysql+jbpm配置工作流(1)

摘自: http://blog.yesky.com/128/javafoot/1197628.shtml
环境:
JDK142
tomcat 5.0
mysql 5.0.16
apache-ant-1.6.5
jbpm-starters-kit-3.1.4
一、解压缩jdpm-starters-kit-3.1.4,标识为:JBPM_HOME
       在mysql数据库中建库”jbpm“,在%JBPM_HOME%/lib下,建立mysql文件夹,将mysql驱动程序拷贝到mysql文件夹下。
二、为ant创建jbpm相关数据库修改相关配置文件
1
%JBPM_HOME%\src\resources\mysql下,创建create.db.hibernate.properties,“hsqldb 目录改名为 “mysql” ,并修改 create.db.hibernate.properties文件,内容如下:

1  # these properties are used by the build script to create 
2  # a hypersonic database in the build / db directory that contains 
3  # the jbpm tables and a process deployed in there
4  hibernate.dialect = org.hibernate.dialect.MySQLDialect
5  hibernate.connection.driver_class = com.mysql.jdbc.Driver
6  hibernate.connection.url = jdbc:mysql: // localhost:3306/jbpm
7  hibernate.connection.username = root
8  hibernate.connection.password =
9  hibernate.show_sql = true

2 、修改 %JBPM_HOME%\build.deploy.xml 文件中 “target” “create.db” 的內容,删除 “db.start” “db.stop” ,将所有的 “hsqldb” 替换为 “mysql”
内容如下:

 1  < target name = " create.db "  depends = " declare.jbpm.tasks, db.clean "  description = " creates a hypersonic database with the jbpm tables and loads the processes in 
 2  there " >
 3       < jbpmschema actions = " create "  properties = " ${basedir}/src/resources/mysql/create.db.hibernate.properties " />  
 4       < loadidentities file = " ${basedir}/src/resources/mysql/identity.db.xml "  properties = " ${basedir}/src/resources/mysql/create.db.hibernate.properties " />  
 5       < ant antfile = " build.xml "  target = " build.processes "  inheritall = " false "   />  
 6       < deploypar properties = " ${basedir}/src/resources/mysql/create.db.hibernate.properties " >
 7         < fileset dir = " build "  includes = " *.par "   />
 8       </ deploypar >
 9     </ target >
10 

三、为 ant 创建 jbpm.war 包修改相关配置文件
1
、修改 %JBPM_HOME%\src\config.files\hibernate.cfg.xml 文件中数据库连接配置部分,内容如下:

 1  ……
 2       <!--  jdbc connection properties  -->
 3       < property name = " hibernate.dialect " > org.hibernate.dialect.MySQLDialect </ property >
 4       < property name = " hibernate.connection.driver_class " > com.mysql.jdbc.Driver </ property >
 5       < property name = " hibernate.connection.url " > jdbc:mysql: // localhost:3306/jbpm</property>
 6       < property name = " hibernate.connection.username " > root </ property >
 7       < property name = " hibernate.connection.password " > rootrootrootroot </ property >
 8      <!--  other hibernate properties  -->
 9       < property name = " hibernate.show_sql " > true </ property >
10      ……
11 
2 、创建/修改 %JBPM_HOME%\src\resources\jbpm.sar\jbpm.properties ,内容如下:

 1  jbpm.scheduler.service.factory = org.jbpm.scheduler.impl.SchedulerServiceImpl
 2  jbpm.task.instance. class = org.jbpm.taskmgmt.exe.TaskInstance
 3  # uncomment the next line  if  JbpmSessionFactory.getInstance()
 4  # should lookup the singleton instance from JNDI instead of creating 
 5  # a  default  one.
 6  #
 7  # jbpm.session.factory.jndi.name = java: / jbpm / JbpmSessionFactory
 8  # uncomment the next line to use the file system instead of the database  for  
 9  # storing files related to a process definition
10  #
11  # jbpm.files.dir = c: / jbpm.data
12  # resource path to a properties file that will overwrite all the hibernate 
13  # properties. For database specific builds in db project there is a different
14  # hibernate.properties file on the classpath  for  each database. You could change
15  # the  default  database  for  any testing runs by uncommenting the next line and
16  # adding a hibernate.properties file in the basedir.
17  #
18  jbpm.hibernate.cfg.xml = jbpm.hibernate.cfg.xml
19  # jbpm.hibernate.properties = jbpm.hibernate.properties
20 

3 、修改 %JBPM_HOME%\src\resources\jbpm.sar\jbpm.hibernate.properties ,只用 hibernate.cfg.xml 来配置 hibernate ,因此全部注释掉,内容如下:

1  # hibernate.dialect = org.hibernate.dialect.HSQLDialect
2  # hibernate.connection.datasource = java: / DefaultDS
3  # hibernate.show_sql = true

4 、修改 %JBPM_HOME%\build.deploy.xml 文件, “target” “build.webapp” 的內容,原文件相关的 jar 包未包含全,因此补全,内容如下:
 

 1    < target name = " build.webapp "  description = " builds jbpm.war " >
 2       < ant antfile = " build.xml "  target = " build "   /><!--  原文件是target = " build.webapp "   -->
 3       < mkdir dir = " build/jbpm.war.dir "   />
 4       < copy todir = " build/jbpm.war.dir " >
 5         < fileset dir = " src/resources/jbpm.war "   />
 6       </ copy >
 7       < copy todir = " build/jbpm.war.dir/WEB-INF/lib " >
 8         < fileset dir = " build "  includes = " jbpm*.jar,converter.jar "  excludes = " *src*.jar "   />
 9         < fileset dir = " lib/jsf "  includes = " *.jar "   />
10         < fileset dir = " lib/dom4j "  includes = " *.jar "   />
11         <!-- fileset dir = " lib/jaxen "  includes = " *.jar "   /  included in lib / hibernate  -->
12         < fileset dir = " lib/hibernate "  includes = " *.jar "   />
13         < fileset dir = " lib/mysql "  includes = " *.jar "   />
14         < fileset dir = " lib/commons "  includes = " commons-digester-*.jar,  commons-beanutils-*.jar "   />
15         < fileset dir = " lib/jboss "  includes = " *.jar "   excludes = " jboss*.jar,*servlet*.jar,*hsql*.jar,dom4j*.jar "   />
16       </ copy >
17       < jar destfile = " build/jbpm.war " >
18         < fileset dir = " build/jbpm.war.dir "   />
19       </ jar >  
20     </ target >
21 

四、执行 Ant
1
、创建并初始化 jbpm 例子所需的 table

1  ant create.db  - buildfile build.deploy.xml


2 、生成 jbpm.war

1  ant build.webapp  - buildfile build.deploy.xml


 


五、 tomcat 拥抱 jbpm
%JBPM_HOME%\build\jbpm.war 文件复制到 Tomcat webapp 目录下,启动 Tomcat 自动部署 jbpm ,访问 http://localhost:8080/jbpm ,出现登录页面,配置成功。

 

你可能感兴趣的:(tomcat+mysql+jbpm配置工作流(1))