jbpm笔记1

jbpm学习备注

 

1.安装到tomcat

 

>cd install

>ant -Ddatabase=mysql demo.setup.tomcat

 

说明:在安装机器上需要一个mysql服务器,并且创建一个数据库名字叫jbpmdb,更改install/jdbc/mysql.properties的配置。如果使用默认的hsqldb,在导入sql时会发生一个jdbc batch update错误,因此使用mysql可以绕开这个错误。

 

2.启动tomcat

 

控制台:

http://localhost:8080/jbpm-console/

用户名/密码:alex/password

 

web流程设计器:

http://localhost:8080/jbpmeditor/p/explorer/

 

目前web流程设计器不支持chrome浏览器。

 

3.jbpm的文档和书籍极少。国外一本,国内两本,而且仅仅凭官方的用户指南,连入门都无法入,例如你不知道怎么部署一个流程定义,不知道怎么使用安装后默认的流程实例……

 

只能去看它自带的那些例子,方法是:

-用eclipse导入example下的示例

-用jbpm-console去一个个运行实例来看运行结果

 

这两条路都需要你自己去动手和摸索,没有文档指引。

 

4.如何利用ant任务来部署流程

 

jbpm提供了一个ant task,注意,它是直接通过数据库来实现部署,因此必须指明数据库类型、连接等属性信息。(这点jbpm的用户手册丝毫不提,光凭用户手册的那些ant脚本是不可能部署成功的)

 

1)创建一个java工程

2)写一个自己的jpdl,例如myjbpm1.jpdl.xml

3)选中工程,eclipse>export>ant buildfiles,导出该java工程的一份初始ant build脚本

4)从jbpm_home/examples/build.xml中拷贝一些属性

 

<property name="jbpm.home" value="/home/huangwy/applications/jbpm4.4/jbpm-4.4"/>

<property name="database" value="mysql" />

<property name="bind.address" value="localhost" />

<property name="jdbc.properties.dir" value="${jbpm.home}/install/jdbc" />

<property file="${jdbc.properties.dir}/${database}.properties" />

<property name="tomcat.version" value="6.0.26" />

<property name="tomcat.parent.dir" value="${jbpm.home}" />

<property name="tomcat.home" value="${tomcat.parent.dir}/apache-tomcat-${tomcat.version}" />

<property name="tomcat.filename" value="apache-tomcat-${tomcat.version}.zip" />

<property name="tomcat.lib.dir" value="${tomcat.home}/lib" />

<property name="tomcat.webapps.dir" value="${tomcat.home}/webapps" />

 

有些属性可能是冗余的,但是拷贝过来问题不大,就留着它们吧!注意我用的是mysql数据库,如果你安装jbpm成功,那么mysql数据库连接这些是先经过配置的。

 

然后添加一些ant目标和任务

 

<taskdef name="jbpm-deploy" classname="org.jbpm.pvm.internal.ant.JbpmDeployTask" classpathref="myjbpm.classpath"/>

<target name="clean.deploy">

<delete dir="${basedir}/deploy"/>

</target>

<target name="init.deploy">

<mkdir dir="${basedir}/deploy"/>

</target>

<target name="jar.deploy" depends="clean.deploy,init.deploy,build">

<jar destfile="${basedir}/deploy/myjbpm.bar">

<fileset dir="bin"/>

</jar>

<jbpm-deploy file="${basedir}/deploy/myjbpm.bar"/>

</target>

 

5)将example/src下面的xml和.properties、.css文件拷贝到工程的源代码目录,对jbpm.hibernate.cfg.xml文件改成mysql的,默认是hsql

<?xml version="1.0" encoding="utf-8"?>

 

<!DOCTYPE hibernate-configuration PUBLIC

          "-//Hibernate/Hibernate Configuration DTD 3.0//EN"

          "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

 

<hibernate-configuration>

  <session-factory>

 

     <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>

     <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>

     <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/jbpmdb</property>

     <property name="hibernate.connection.username">root</property>

     <property name="hibernate.connection.password">root</property>

     <property name="hibernate.hbm2ddl.auto">update</property>

     <property name="hibernate.format_sql">true</property>

 

     <mapping resource="jbpm.repository.hbm.xml" />

     <mapping resource="jbpm.execution.hbm.xml" />

     <mapping resource="jbpm.history.hbm.xml" />

     <mapping resource="jbpm.task.hbm.xml" />

     <mapping resource="jbpm.identity.hbm.xml" />

 

  </session-factory>

</hibernate-configuration>

 

6)运行

ant jar.deploy就可以成功部署myjbpm.bar。

 

7)现在到jbpm-console去玩玩这个简单流程吧!

你可能感兴趣的:(tomcat,Hibernate,mysql,ant,jbpm)