`
water053
  • 浏览: 1465 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jbpm学习笔记1: ant构建以及数据库环境的配置

阅读更多

做jbpm一段时间,但是一直没来得及记下点什么,今天开始写点jbpm4.x的笔记。 
    首先介绍一下jbpm的一些理论知识。(参考jbpm4工作流应用开发指南) 
    企业信息化是每个现代企业构建强有力管理或生产后盾的一个基本途径,普通的流程已经不能满足复杂的企业应用,工作流逐渐流行起来,特别是在ERP(企业资源计划),CRM(客户关系管理),EAI(企业应用集成)等企业应用中,发挥了不可估量的作用,当然,互联网领域也有着很多类似的应用。 

    传统的工作流解决方案已经阻碍开发者的脚步,那么工作流引擎成了统一步伐的发令枪。 
    JBoss的jbpm可以说是现在最为流行的一种java工作流业务流程管理框架,是一个可扩展,灵活的能够实现工作流/业务流程管理的企业级开发框架,提供了流程定义,流程部署,流程执行,流程管理等功能。 
    前段时间一个前同事说学习jbpm时候吃了很多亏,倒腾了几天还在报错,我现在就从最开始怎样配置,怎样部署,一步步的记录jbpm的开发过程,也算是我再熟悉一下了(现在脑子想的事儿多,一时半会容易出现blank,好记性不如烂键盘!)。 
    一,这个东东虽然是jboss的,但是也支持tomcat的。你可以下载tomcat6或者jboss5,我建议先下载jbpm4.4,然后解压,解压后的文件夹就是你的jbpm工作目录,我就用${jbpm.home}来表示,然后下载一个jboss-5.1.0.GA.zip,并且把这个压缩文件,直接拷贝到${jbpm.home}/install/downloads下面去(其实tomcat是一样的道理)。你可以不拷贝进去,但是你不拷贝的话,等你ant的时候,它会自动的在网上下载这个版本的jboss,万能了ant啊(后面会提到)。 
    二,假如你不了解ant的话,我建议你看看我的另外一篇博文http://duyunfei.iteye.com/blog/857675,假如你没时间看,请继续。 
ant说简单点,是一个构建部署程序的一把利剑,由于是基于java的开源产品,所以具有良好的移植性和易用性。首先,你下载一个最新ant版本,然后下载后解压,设置环境变量 ANT_HOME=E:\ant1.8.2,Path后面加上;E:\ant1.8.2\bin,启动cmd然后ant,出现build.xml does not exist! 成功。 
      此时你打开命令控制台,即cmd,进入目录${jbpm.home}/install,运行脚本:ant demo.setup.jboss,ok,别看这两步,它帮你完成了这些操作: 
      1,把jboss安装到${jbpm.home}的jboss-5.1.0.GA下。 
      2,把jbpm安装到jboss中。 
      3,安装HSQLDB,并在后台启动。 
      4,创建数据库表结构。 
      5,在后台启动jboss,你可以用http://localhost://8080访问,会出现jboss的首页。 
      6,根据示例(来自examples目录)创建一个examples.bar 业务流程归档,并把它发布到jbpm数据库中。 
      7,从${jbpm.home}/install/src/demo/example.identities.sql初始化用户和组。 
      有的书中说还把eclipse安装到${jbpm.home}/eclipse中,启动eclipse,安装jbpmweb控制台,安装signavio web设计器,但是我这人 

貌似没这些。 
      此时你可以使用GPD(图形化流程设计器)这个机遇eclipse的客户端软件区进行流程建模,如何安装待会儿再讲,或者你可以通过 

     Signavio web设计器进行流程建http://localhost:8080/jbpmeditor/p/explorer,这时候,也可以使用jbpm控制台 
http://localhost:8080/jbpm-console/,用下列用户之一进行登录(用户名/密码): 
        alex/password,mike/password,peter/password,mary/password 
      ant可以为我们办到很多事情,比如下载安装eclipse,jboss,tomcat等,但是惟独没有帮我们下载并安装数据库软件,如果要成功运行jbpm,你必须要修改一些配置文件,例如数据库对应的配置文件,在目录${jbpm.home}/install/jdbc中,这个目录列出了jbpm官方支持数据库类型的相应配置,根据你对数据库的选择配置相应的properties文件。例如mysql.properties的内容如下 
        jdbc.driver=com.mysql.jdbc.Driver 
        jdbc.url=jdbc:mysql://localhost:3306/jbpmdb 
        jdbc.username=jbpm 
        jdbc.password=jbpm 
       
       oracle.properties的内容如下 
        jdbc.driver=oracle.jdbc.driver.OracleDriver 
        jdbc.url=jdbc:oracle:thin:@localhost:1521:jbpmdb 
        jdbc.username=jbpm 
        jdbc.password=jbpm 

      在install的build.xml文件中database可以自定义,默认是HSQLDB,可选值是mysql,oracle,postgresql,在ant的时候jboss.version可以指定为5.0.0GA或者5.0.0GA,jbpm4.3的默认是前者,jbpm4.4默认是后者,我们按照高版本来。如果要自定义这些参数值,可以在运行ant安装脚本时使用 -D指令,如: 
      ant -Ddatabase=postgresql demo.set.jboss,假如你刚才已经执行过了,现在务必把jboss的服务关了,而且得把mysql服务打开,并确保mysql.properties中的链接语句是正确的,才能重新执行成功。 
     执行成功后,你可以在mysql数据库中看到jbpmdb下面建立了许多表。在这儿不列出来了。 
     在这里提到一个重要的概念,执行ant的时候,会把jbpm安装到Jboss应用服务器中,这回把jbpm安装成一个jboss的服务,因此这台jboss上所有应用程序都可以使用这个安装的jbpm流程引擎。 
     在上面我们提到 Signavio 这个东西,它是基于web的流程设计器,输入 
     http://localhost:8080/jbpmeditor/p/explorer,可以进入管理页面。 
     配置它比较简单,大多数参数在web.xml中修改即可,你可以在jbpmeditor.war/WEB-INF/目录中找到,fileSystemRootDirectory很重要, 
这个参数的值必须为一个物理上存在的本地目录,它指定了流程定义文件(*.jpdl.xml文件)存储的位置,比如我的这个参数显示的是 

Xml代码  收藏代码
  1.       
  2. <context-param>  
  3.          <description>Filesystem directory that is used to   
  4.                     store models</description>  
  5.             <param-name>fileSystemRootDirectory</param-name>  
  6.             <param-value>F:/jbpm-4.4/signavio-repository</param-value>  
  7.    
  8. </context-param>  
  9.        

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics