Activiti学习文档(四)之运行项目并启动流程

 在上一节中,我们已经成功画出了 Activiti 流程图,接下来就是部署并启动流程,并真正的运用所画出的流程图,来进行开发项目了。当然了,在这之前,我们需要启动一下项目,按照真实的项目流程来运行。在这里,由于前端页面比较耗费时间,可以下载我这边提供的页面 (http://download.csdn.net/detail/samile6899/9640616  ),项目导入到Eclispse 中,运行起来的项目是这样的:






项目成功跑起来的话,大致的效果就是这样的差不多。然后的话,我们首先需要开始部署流程以及下部署的类和方法了……

        1,点击 “ 流程管理 ”-----》“ 部署管理 ”,会看到这样的画面:


         2,把之前的 Activiti 流程图压缩成一个ZIP文件,接下来开始编写相应的处理方法:

/**
	 * 部署管理首页显示
	 * @return
	 */
	public String deployHome(){
		//1:查询部署对象信息,对应表(act_re_deployment)
		List<Deployment> depList = workflowService.findDeploymentList();
		//2:查询流程定义的信息,对应表(act_re_procdef)
		List<ProcessDefinition> pdList = workflowService.findProcessDefinitionList();
		//放置到上下文对象中
		ValueContext.putValueContext("depList", depList);
		ValueContext.putValueContext("pdList", pdList);
		return "deployHome";
	}
/**
	 * 发布流程
	 * @return
	 */
	public String newdeploy(){
		//获取页面传递的值
		//1:获取页面上传递的zip格式的文件,格式是File类型
		File file = workflowBean.getFile();
		//文件名称
		String filename = workflowBean.getFilename();
		//完成部署
		workflowService.saveNewDeploye(file,filename);
		return "list";
	}

/**
	 * 查看流程图
	 * @throws Exception 
	 */
	public String viewImage() throws Exception{
		//1:获取页面传递的部署对象ID和资源图片名称
		//部署对象ID
		String deploymentId = workflowBean.getDeploymentId();
		//资源图片名称
		String imageName = workflowBean.getImageName();
		//2:获取资源文件表(act_ge_bytearray)中资源图片输入流InputStream
		InputStream in = workflowService.findImageInputStream(deploymentId,imageName);
		//3:从response对象获取输出流
		OutputStream out = ServletActionContext.getResponse().getOutputStream();
		//4:将输入流中的数据读取出来,写到输出流中
		for(int b=-1;(b=in.read())!=-1;){
			out.write(b);
		}
		out.close();
		in.close();
		//将图写到页面上,用输出流写
		return null;
	}
/**
	 * 删除部署信息
	 */
	public String delDeployment(){
		//1:获取部署对象ID
		String deploymentId = workflowBean.getDeploymentId();
		//2:使用部署对象ID,删除流程定义
		workflowService.deleteProcessDefinitionByDeploymentId(deploymentId);
		return "list";
	}


         在之前的传上去的项目中,这些方法都是写好的。大家可以对照着代码,看明白意思后,试着编写下;其实主要是几个步骤,想明白就好了:

              a),当你点击 “ 部署管理 ”菜单的时候,首先需要到数据中查找已经部署过的流程,然后显示出来,所以需要写查询方法;

              b),在点击 “ 部署管理 ”菜单之后,页面也加载完毕之后,需要上传Activiti流程图的ZIP包进行解析,然后部署该流程,所以要写该方法;

              c),在点击 “ 部署管理 ”菜单之后,页面也加载完毕之后,你会看到已经部署过的流程,那么你想要看下流程图片的时候,需要写该方法;

              d),在点击 “ 部署管理 ”菜单之后,页面也加载完毕之后,你发现你画的流程图画错了,重新删掉,所以你需要些删除的方法;


       最后,流程被成功部署的话,页面会自动刷新,最终的效果图是这样的:



        流程的话就是这样,在这一节也不说太多。主要以把项目成功跑起来并能够成功部署流程ZIP为主,如果这一步成功之后,就可以开始启动流程并结合相关业务来进行开发流程了。

**************************************************************************************************

注:Activiti 学习总结资料下载 (http://download.csdn.net/detail/samile6899/9829785

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值