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

JBPM4.4 使用之流程管理初探

    博客分类:
  • jbpm
阅读更多

注:本篇只做简略的入门样例,更深入的介绍,请关注之后的博客内容。

 

管理流程定义

主要功能包括:

-发布流程定义

-查看流程定义

-删除流程定义

import java.util.List;

import org.jbpm.api.Configuration;
import org.jbpm.api.ProcessDefinition;
import org.jbpm.api.ProcessEngine;
import org.jbpm.api.RepositoryService;

import junit.framework.TestCase;


public class HelloTest extends TestCase {
	
	ProcessEngine processEngine;	
	
	public HelloTest() {
		processEngine = Configuration.getProcessEngine();
	}
	
	public void testDeploy(){
		RepositoryService rs = processEngine.getRepositoryService();
		
		//发布流程定义
		String deploymentId=rs.createDeployment().
		addResourceFromClasspath("helloworld.jpdl.xml").deploy();
		
		//获得流程定义		
		List<ProcessDefinition> list=rs.createProcessDefinitionQuery().list();
		System.out.println("list.size():"+list.size());
		for (ProcessDefinition pd : list) {
			System.out.println("pd.id:"+pd.getId());
		}
		
		System.out.println("deploymentId:"+deploymentId);
		//删除流程定义
		rs.deleteDeploymentCascade(deploymentId);
		//删除后查询流程定义
		System.out.println("after del list count:"+
				rs.createProcessDefinitionQuery().list().size());			
		
	}
}

 

 

完成后点击右键,选择【Run As】,进一步【Junit Test】。Junit出现绿条,并且控制台输出如下结果,则测试通过。

 

list.size():1
pd.id:helloworld-1
deploymentId:1
after del list count:0

 

 

管理流程实例

主要功能包括:

-发起新流程

-执行等待的流程

-查看流程实例

-终止流程实例

-删除流程实例

 

import java.util.List;

import org.jbpm.api.Configuration;
import org.jbpm.api.ExecutionService;
import org.jbpm.api.ProcessEngine;
import org.jbpm.api.ProcessInstance;

import junit.framework.TestCase;


public class ProcessInstanceTest extends TestCase {

	ProcessEngine processEngine;
	
	public ProcessInstanceTest() {
		processEngine = Configuration.getProcessEngine();
	}
	@Override
	protected void setUp() throws Exception {
		processEngine.getRepositoryService().createDeployment()
		.addResourceFromClasspath("helloworld.jpdl.xml").deploy();
	}
	
	/**
	 * 流程实例state节点向下执行
	 */
	public void testProcessInstance(){
		ExecutionService es= processEngine.getExecutionService();
		//流程实例
		ProcessInstance pi = es.startProcessInstanceByKey("helloworld");
		//state向下执行
		pi= es.signalExecutionById(pi.getId());
		System.out.println("pi.isEnded"+pi.isEnded());
	}
	
	/**
	 * 终止流程实例
	 */
	public void testProcessInstanceEnd(){
		ExecutionService es= processEngine.getExecutionService();		
		//流程实例
		ProcessInstance pi = es.startProcessInstanceByKey("helloworld");
		//终止流程实例
		es.endProcessInstance(pi.getId(), "结束流程");
	}
	
	/**
	 * 删除流程实例
	 */
	public void testProcessInstanceDel(){
		ExecutionService es= processEngine.getExecutionService();		
		//流程实例
		ProcessInstance pi = es.startProcessInstanceByKey("helloworld");
		//删除流程实例
		es.deleteProcessInstanceCascade(pi.getId());
	}
	
	/**
	 * 流程实例列表
	 */
	public void testProcessInstanceList(){
		ExecutionService es= processEngine.getExecutionService();		
		//流程实例
		ProcessInstance pi = null;
		for (int i = 0; i < 10; i++) {
			pi= es.startProcessInstanceByKey("helloworld");			
		}
		//查询流程实例列表
		List<ProcessInstance> list= es.createProcessInstanceQuery().list();
		//输出列表数到控制台
		System.out.println("list.size:"+list.size());
	}	
}

 

 

以下是测试用的工程,有需要的朋友可以下载运行看看结果!当然环境配置是必须的,关于环境配置请参考我的上一篇博客。

 

1
1
分享到:
评论

相关推荐

    jBPM4.4.rar_jbpm4.4_jbpm4.4 PDF

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

    jbpm4.4 在线设计流程图 ext + raphael

    jbpm4.4是一款强大的业务流程管理(BPM)框架,它允许开发者设计、执行和管理复杂的业务流程。在线设计流程图功能使得流程设计更为直观和便捷,无需离开Web环境即可完成。本教程将深入探讨jbpm4.4的在线设计流程图...

    JBPM4.4 使用之配置管理

    **JBPM4.4 使用之配置管理** JBPM(Java Business Process Management)是一款开源的工作流管理系统,用于管理和执行业务流程。在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流程管理Demo(附学习资料)

    【JBPM4.4流程管理Demo】是一个基于JBPM4.4版本的示例项目,主要展示了如何在实际业务场景中应用工作流引擎进行流程管理,特别是报销流程的管理。这个Demo不仅包含了可运行的代码,还附带了学习资料和SQL文件,方便...

    jBPM4.4开发实例

    jBPM4.4是该框架的一个版本,它提供了强大的工作流服务,包括流程定义、流程实例管理、任务处理、事件处理以及规则集成等。在这个入门开发实例中,我们将探讨如何利用jBPM4.4进行业务流程的建模、部署和执行。 **一...

    jbpm4.4文档+学习资料

    jbpm4.4是JBoss企业级业务流程管理(Business Process Management)平台的一个重要版本,它为开发者提供了全面的工作流和业务流程管理解决方案。本文将深入解析jbpm4.4的相关知识点,帮助那些寻找优质学习资源的朋友...

    JBPM4.4完整可用审批流程

    JBPM4.4是JBoss Business Process Management (BPM)平台的一个版本,它是一个开源的企业级BPM解决方案,用于设计、执行和管理业务流程。在这个完整的审批流程工程中,我们看到它采用Maven进行项目构建和依赖管理,...

    jbpm4.4-请假流程

    jbPM是Java Business Process Management的缩写,它是一个开源的工作流和业务流程管理系统,提供了对BPMN 2.0规范的支持,允许开发者设计、执行和管理业务流程。 在jbpm4.4版本中,核心功能包括流程定义、流程实例...

    JBPM4.4资料的其他补充

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

    jbpm4.4中文开发指南

    **jbpm4.4中文开发指南** ...通过阅读《jbpm4.4开发指南.doc》,读者可以系统了解jbpm的工作原理、配置方法、使用技巧,以及常见问题的解决方案,从而更好地在实际项目中运用jbpm4.4来实现高效、灵活的业务流程管理。

    jBPM 4.4用户手册 中文PDF

    **jBPM 4.4** 是一个开源的工作流程管理系统,由Red Hat公司开发并维护,主要用于业务流程管理(BPM)和工作流自动化。该系统提供了强大的流程建模、执行和监控功能,支持Java平台,并与Java EE和Spring框架高度集成...

    jbpm4.4+s2sh请假流程例子

    在这个例子中,jbpm4.4作为流程管理的核心,负责定义和执行业务流程,而S2SH则提供了数据持久化、MVC架构以及依赖注入等基础支持。 首先,jbpm4是JBoss公司开发的一款开源的工作流管理系统,它允许开发者通过图形化...

    JBPM4.4教程

    JBPM(JBoss Business Process Management)是一款开源的工作流引擎,主要用于实现业务流程管理(BPM)。JBPM4.4是该系列的一个稳定版本,本文将详细介绍如何从零开始构建一个JBPM4.4应用。 ##### 下载JBPM4.4 ...

    jBPM4.4开发指南

    jBPM 即 Java Business Process Management,是基于 Java 的业务流程管理系统。它是市面上相当流行的一款开源工作流引擎,底层基于 Active Diagram 模型。 **2. jBPM4.4特性** - jBPM4.4 使用了 Hibernate (3.3.1 ...

    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