`
Johnny_GZ
  • 浏览: 179099 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

转:jbpm4.4流程管理操作

 
阅读更多
  流程定义ProcessDefinition是对业务过程的完整描述,例如请假流程定义、报销流程定义等。
   
    流程定义的管理包括部署流程定义、查询流程定义、查看流程定义图和删除流程定义。
   
    和流程定义相关的表jbpm4_deployment、jbpm4_deployprop和jbpm4_lob,其中jbpm4_lob存放流程定义相关资源,如流程定义xml文件和流程定义图。
   
    1、部署流程定义
   
    使用RepositoryService接口提供的方法,流程定义XML的内容可以从classpath路径下、文件、输入流、字符串、URL或者zip流中获取。我们主要看一下从classpath路径下获取和从zip流中获取流程定义文件。
   
    1)从classpath路径下获取流程定义文件。
   
    //从classpath路径下获取流程定义文件
   
    String deploymentId = repositoryService.createDeployment()
   
    .addResourceFromClasspath("Leave.jpdl.xml")
   
    //流程定义文件
   
    .addResourceFromClasspath("Leave.png")//流程定义图
   
    .deploy();
   
    其中流程定义图不是必须的,如果不需要,可以不用加载。
   
    2)从zip流中获取流程定义文件。
   
    将流程定义文件Leave.jpdl.xml和Leave.png打包成Leave.zip后进行部署。
   
    //从zip流中获取流程定义文件
   
    InputStream is = new FileInputStream("D:/Leave.zip");
   
    ZipInputStream zipInputStream = new ZipInputStream(is);
   
    String deploymentId = repositoryService.createDeployment()
   
    .addResourcesFromZipInputStream(zipInputStream)
   
    .deploy();
   
    2、查询流程定义
   
    1)查询所有的流程定义。
   
    //查询所有的流程定义
   
    List<ProcessDefinition> processDefinitions = repositoryService.createProcessDefinitionQuery()。list();
   
    2)根据条件、排序、分页查询流程定义。
   
    List<ProcessDefinition> processDefinitions = repositoryService.createProcessDefinitionQuery()
   
    .processDefinitionId(id)//根据流程定义ID查询
   
    .processDefinitionKey(key)//根据流程定义的key查询
   
    .processDefinitionName(name)//根据流程定义的名字查询
   
    .orderAsc(ProcessDefinitionQuery.PROPERTY_ID)//排序
   
    .orderAsc(ProcessDefinitionQuery.PROPERTY_KEY)//排序
   
    .page(firstResult, maxResults)//分页
   
    //.count()//符合条件的流程定义数量
   
    .list();//符合条件的流程定义集合


   
    3、查看流程定义图
   
    流程定义图属于流程定义中的资源,存放在JBPM4_LOB表中,可以根据流程定义部署id和流程定义图名称来获取。
   
    //部署ID String deploymentId = "1";
   
    //流程定义图名称String resourceName = "Leave.png";
   
    //获取流程定义图资源InputStream is = repositoryService.getResourceAsStream(deploymentId, resourceName);
   
    //将流程定义图保存到D盘FileOutputStream fos = new FileOutputStream("d:/Leave.png");
   
    BufferedOutputStream bos = new BufferedOutputStream(fos);
   
    int len = -1; while((len = is.read())!= -1)
   
    {
   
    bos.write(len);}bos.flush();is.close();fos.close();bos.close();
   
    4、删除流程定义
   
    String deploymentId = "1";
   
    //删除流程定义//如果要删除的流程定义还存在未完成的流程实例,会报错。
   
    repositoryService.deleteDeployment(deploymentId);
   
    //删除流程定义
   
    //级联删除流程定义及其产生的所有流程实例
   
    repositoryService.deleteDeploymentCascade
   
    (deploymentId);
分享到:
评论

相关推荐

    jBPM4.4.rar_jbpm4.4_jbpm4.4 PDF

    《jBPM4.4开发指南》与《jBPM4.4中文用户手册》是深入理解jBPM...总的来说,jBPM4.4是企业级业务流程自动化的重要工具,通过深入学习这两份资料,开发者和业务人员都能够充分利用其功能,提升流程管理的效率和灵活性。

    jbpm4.4 流程运转+驳回+分配组任务+ssh2

    jbpm4.4是JBoss Business Process Management Suite的第4.4版本,它是一个开源的工作流和业务流程管理系统,用于构建、部署和管理业务流程。本教程将深入探讨jbpm4.4中的核心功能,包括流程运转、驳回、分配组任务...

    jbpm4.4下载地址

    jBPM 4.4是一个功能强大且灵活的业务流程管理工具,它的开源性质和广泛的社区支持使其成为许多企业的首选。无论是对于希望优化内部工作流的企业,还是对于寻求提供业务流程管理解决方案的开发人员,jBPM 4.4都提供了...

    jbpm4.4 中文手册

    jbpm4.4是JBoss Business Process Management (BPM) Suite的一个版本,它是一个开源的业务流程管理系统,用于设计、部署和执行业务流程。这个中文手册是对原版英文文档的全面翻译,旨在帮助中文用户更好地理解和使用...

    JBPM4.4流程管理Demo(附学习资料)

    【JBPM4.4流程管理Demo】是一个基于JBPM4.4版本的...通过深入研究和实践这个【JBPM4.4流程管理Demo】,开发者不仅可以掌握JBPM的基本操作,还能了解到如何在实际业务场景中应用工作流引擎,提高工作效率和流程规范性。

    JBPM4.4资料的其他补充

    JBPM,全称为Java Business Process Management,是一款开源的工作流管理...总之,JBPM4.4是一个功能丰富的业务流程管理平台,它的补充资料对于开发者来说是非常有价值的资源,可以帮助他们更好地掌握和应用这一工具。

    jBPM4.4开发实例

    **三、jBPM4.4流程建模** 1. **使用BPMN编辑器**:通过图形化界面设计流程图,包括任务、网关、事件等元素,生成流程定义文件(.bpmn或.bpmn2)。 2. **编写Java类**:为每个任务创建对应的Java类,实现任务的逻辑...

    jbpm4.4+tomcat6+eclipse jee

    【jbpm4.4+Tomcat6+Eclipse JEE】是一个经典的组合,用于构建基于流程管理的Java企业级应用。JBPM(Business Process Management)是一个开源的工作流管理系统,它允许开发者设计、部署和执行业务流程。Tomcat6则是...

    JBPM4.4 API 【最全API 包含所有实现类】

    JBPM4.4 API,全称为Java Business Process Management 4.4 Application Programming Interface...全面的实现类列表则为开发者提供了宝贵的资源,帮助他们更深入地理解和利用这个框架,实现高效、灵活的业务流程管理。

    jbpm4.4项目

    6. **集成能力**:jbpm4.4可以与Spring框架、EJB等企业级技术结合,实现业务逻辑与流程管理的无缝对接。此外,它还支持JMS、邮件等通信方式,方便与其他系统交互。 7. **测试与调试**:jbpm4.4提供了测试框架,允许...

    jbpm4.4与ssh2的项目整合所需jar包

    jbpm4.4是JBoss公司提供的一个开源工作流管理系统,它允许开发者在Java应用程序中轻松地实现业务流程管理(BPM)。SSH2则是Struts2、Spring和Hibernate三个开源框架的组合,常用于构建企业级的Java Web应用。将jbpm...

    jbpm4.4用户手册中文版

    jbpm是一个开源的业务流程管理系统(BPM),它提供了工作流程服务、规则引擎和事件处理等功能,广泛应用于企业的业务流程管理和优化。 1. **jbpm概述**:jbpm是Java Business Process Management的缩写,它是一个...

    jbpm4.4 完整例子

    【jbpm4.4 完整例子】是一个基于servlet和jsp实现的业务流程管理(BPM)系统示例,它展示了jbpm4.4框架的核心功能和应用场景。jbpm是一个开源的工作流和业务流程管理系统,它允许开发者设计、执行、管理和监控业务...

    jbpm 4.4 用户指南与开发指南

    jbpm是一款开源的工作流管理系统,它提供了一套完整的业务流程管理解决方案,包括流程设计、部署...通过这两份指南,无论是开发者还是业务人员,都能全面掌握jbpm 4.4的功能和使用方法,实现高效且灵活的业务流程管理。

    jbpm4.4开发包2

    【jbpm4.4开发包2】是针对Java业务流程管理(Business Process Management,简称BPM)系统的一个重要版本,由JBoss公司开发并维护。jbpm4.4是jbpm框架的第4个主要版本的第4次迭代,它为开发者提供了强大的工具集来...

    jbpm4.4流程图

    在这个“jbpm4.4流程图”中,我们关注的是如何通过图形化的方式来理解和操作这些流程。 流程图在jbpm中扮演着至关重要的角色,它们提供了一个直观的方式来描绘业务流程的各个步骤和决策点。`subjbpm.png`可能是一个...

    jbpm4.4+ssh

    **jbpm4.4** 是jbpm的第4个主要版本,它提供了强大的工作流和业务流程管理功能。jbpm4.4支持BPMN 2.0标准,这使得流程定义更加直观且与各种BPM工具兼容。它包括以下关键特性: 1. **流程建模**:jbpm4.4使用BPMN ...

    jbpm-4.4.zip part03

    总的来说,jbpm是一个强大的业务流程管理工具,适用于需要自动化和优化业务流程的企业或项目。jbpm 4.4版本是其历史版本中的一个重要里程碑,尽管可能不如最新版本那样拥有最新的特性和改进,但对于学习和理解工作流...

    jbpm4.4 简单请假流程

    jbpm4.4是JBoss企业级业务流程管理(Business Process Management)套件的一个版本,它提供了一整套工具和服务,用于设计、部署和执行业务流程。在这个“简单请假流程”中,我们可以深入理解jbpm4.4如何帮助开发者...

    jbpm4.4 shh2 项目示例

    综上所述,jbpm4.4 shh2项目示例展示了如何在Java Web环境中使用jbpm实现流程管理,结合SSH2技术栈处理业务逻辑和数据操作。该项目提供了一个学习和实践业务流程自动化管理的平台,有助于开发者深入理解jbpm和SSH2的...

Global site tag (gtag.js) - Google Analytics