JBPM安装和配置

    在介绍JBPM的安装之前可能有人会问,JBPM不是说它是一个框架,而非一套”应用程序”吗,是的,在深入了解JBPM之后,可以把它的流程引擎看做是一个Java工程-若干java类,依赖库和配置文件;JBPM的流程定义和运行时的上下文是需要存储在关系型数据库中,可以是基于调试目的的内存数据库HSQLDB,也可以是真正的持久化数据库,比如mysql,oracle等,JBPM的流程设计一般是需要一个基于客户端的图形化流程设计器软件,当然在JBPM4版本以后也可以在Web上做流程设计(归功于Signavio项目),最后应用一般部署在应用服务器上,以便服务来自Web的访问。
    看了这么多是否觉得这一切对于初学者来说能很好掌握吗?在早期版本中,要使用JBPM很多准备工作是需要自己来做的,幸运的是随着版本的更新,很多工作都被JBPM软件包的发布者帮您做好了,我们可以通过Ant一键安装。
在安装之前需要准备如下环境:
1. JDK 1.5或更高版本,并设置好相关环境变量值
2. 安装JBPM需要执行Ant脚本,所以需要Apache Ant1.7或更高版本,并配置好A的路径。

3.下面正式介绍JBPM的安装
    首先要下载JBPM的安装包,可以在SourceForge.net上找到它,我使用的是JBPM4.3,实在不行找google,下载下来之后解压到硬盘的任何一个目录中,注意路径不要出现空格和中文之类的,进入目录你会看到其子目录及文件如下
doc: 用户手册,javadoc和开发指南
examples: 用户手册中用到的示例流程  
install:安装适应于不同环境的安装脚本
lib: 第三方库和一些特定的jBPM依赖库
src: 源代码
jbpm.jar: jBPM源代码归档包文件
migration:JBPM升级功能解决方案包

打开cmd,切换到{jbpm.home}/install目录。使用ant –p命令(需安装ant,并配置好环境变量)  这个命令描述了你可以自动化的所有工作,现在主要介绍demo.setup.tomcat或demo.setup.jboss,当运行ant demo.setup.tomcat或者ant demo.setup.tomcat时,JBPM软件包帮你做了很多事情,那tomcat来举例,如下:
1. 把tomcat安装到${jbpm.home}/apache-tomcat-6.0.20目录下
2. 把JBPM安装到tomcat中
3. 安装HSQLDB,并在后台启动
4. 创建数据表结构
5. 在后台启动tomcat
6. 根据示例创建一个example.bar业务流程归档,并将其发布到JBPM数据库中
7. 从${jbpm.home} /instal/src/demo/example.identities.sql初始化用户和组
8. 安装Eclipse到${jbpm.home}/eclipse
9. 启动eclipse
10. 安装JBPM Web控制. 安装Signavio Web设计器


    当然读者会问如果我已经下载好了tomcat和eclipse怎么办,我想用持久化数据库怎么办,回答这些问题之前,我们先来看看ant的配置文件,打开install目录下的build.xml文件,首先我们来看看数据库的配置,如下:
<!-- USER CUSTOMIZABLE PROPERTIES -->
  <property name="database" value="hsqldb" /> <!-- {hsqldb | mysql | oracle | postgresql} -->
  <echo message="database......... ${database}" />
  <property name="tx" value="standalone" /> <!-- {standalone | jta | spring} -->
  <echo message="tx............... ${tx}" />
  <property name="mail.smtp.host" value="localhost" />
  <echo message="mail.smtp.host... ${mail.smtp.host}" />

  <!-- INTERNAL PROPERTY DEFAULTS -->
  <property name="jbpm.version" value="4.3" />
  <property name="jbpm.parent.dir" value="../.." />
  <property name="jbpm.home" value="${jbpm.parent.dir}/jbpm-${jbpm.version}" />
  <property name="hibernate.connection.type" value="jdbc" /> <!-- jdbc | datasource -->
  <property name="logging" value="jdk" /> <!-- jdk | none -->
  <property name="cfg.dest.dir" value="${jbpm.home}/install/generated/cfg" />
  <property name="install.src.dir" value="${jbpm.home}/install/src" />
  <property name="mail.cfg" value="default" />

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

<property name="database" value="hsqldb" />默认是hsqldb,我们可以使用自己的数据库例如mysql,<property name="database" value="mysql" />,同时不要忘记修改{jbpm.home}/install/jdbc目录下的mysql.properties,修改如下:
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://你的ip地址:3306/jbpmdb
jdbc.username=root
jdbc.password=你的数据库密码

不要忘记要新建一个名为jbpmdb的库

接下来我们来看看tomcat的配置
<property name="tomcat.version" value="6.0.18" />
  <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.distro.dir" value="downloads" />
  <property name="tomcat.distro.url" value="http://www.apache.org/dist/tomcat/tomcat-6/v${tomcat.version}/bin/${tomcat.filename}" />
  	<property name="tomcat.distro.path" value="${tomcat.distro.dir}/${tomcat.filename}" />
  	<property name="tomcat.lib.dir" value="${tomcat.home}/lib" />
 <property name="tomcat.webapps.dir" value="${tomcat.home}/webapps" />

Tomcat的默认配置是6.0.20我使用的是6.0.18将其value的值修改<property name="tomcat.version" value="6.0.1[size=large][/size]8" />,从<property name="tomcat.distro.dir" value="downloads" />这个标签可以看到其实tomcat的下载路径是在{jbpm.home}/install/ downloads目录下,我们将预先下载好的tomcat放到该目录下。

接着我们来看看eclipse的配置,如下:
  <!-- ECLIPSE RELATED CONDITIONS -->
  <condition property="eclipse.filename" value="eclipse-jee-indigo-SR2-win32.zip">
    <contains string="${os.name}" casesensitive="false" substring="win" />
  </condition>

如果你下载的eclipse和默认的不一致,将value值修改,我的eclipse是value="eclipse-jee-indigo-SR2-win32.zip"。

当以上配置都完成之后我们可以切换到{jbpm.home}/install目录,此时如果我们想要自定义这些参数值,我们可以在运行Ant脚本时使用-D指令,比如我们想用mysql,可以运行
ant –Ddatabase=mysql demo.setup.tomcat
接下来我们只需耐心等待,JBPM自带的软件包会帮我们做余下的工作,当然如果你有相关的知识和经验,你还可以对build.xml的相关参数做修改。

4.既然环境以及搭建好了,下一步我们要试着定义自己的流程了,Signavio提供了基于浏览器的图形化流程设计器,对于习惯使用了eclipse的人来说在eclipse上定义流程再合适不过了,JBPM的经典GPD一直使用eclipse作为其客户端支撑平台,注意的是eclipse传统版本无法满足GPD的使用要求,因为它没有XML编辑器,但是eclipse IDE for Java Developers 3.5.0可以使用GPD。
使用Eclipse软件升级(Software Update)机制安装GPD是非常简单的。 在gpd目录下有一个install/src/gpd/jbpm-gpd-site.zip文件, 这就是更新站点(archived update site)的 压缩包。
1.选择Help --> install New Software命令
2.点击 Add按钮
3.在 Add Site对话框中,单击 Archive按钮
4.找到 install/src/gpd/jbpm-gpd-site.zip 并点击Openb按钮
5.在Add Site对话框中点击OK按钮,返回到install对话框
6.选择出现的 jPDL 4 GPD 更新站点
7.点击 Next按钮然后点击 Finish按钮
8.接受协议
9.当它询问的时候重启eclipse



5.接下来我们要配置JBPM的运行环境,具体步骤如下:
1.点击 Window --> Preferences
2.选择 JBoss jBPM --> jBPM 4 --> Runtime Locations
3.点击 Add...
4.在 Add Location 对话框中,输入一个名字,比如 jbpm-4.0 然后点击 Search...
5.在 Browse For Folder 对话框中,选择你的jbpm根目录,然后点击 OK
6.点击 OK 在 Add Location 对话框中



6.接下来为工作区间定义一个JBPM用户库,它可以被用来引用JBPM的所有依赖文件,新建一个工程时,你只需将你新建的用户库添加到build path下即可。

7.最后添加jpdl Schema校验
1.选择Windows --> Preferences
2.选择XML --> XML --> CataLog
3.点击Add
4.添加Add XML Catalog Entry的窗口打开
5.点击File System
6.在打开的对话框中, 选择jBPM安装目录下src文件夹中jpdl.xsd文件
7.点击打开(Open)并且关闭所有的对话框



现在一切工作都已经做好,导入JBPM的范例工程试试,引入JBPM安装目录下的examples子目录,在测试类上选择Run  As –> Junit Test命令即可。  

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