`
j2ee_yohn
  • 浏览: 172736 次
  • 性别: Icon_minigender_1
  • 来自: 湖南/株洲
社区版块
存档分类
最新评论

jbmp整个调用流程

    博客分类:
  • java
阅读更多

package com.test;

import java.util.List;

import org.jbpm.JbpmConfiguration;
import org.jbpm.JbpmContext;
import org.jbpm.graph.def.ProcessDefinition;
import org.jbpm.graph.exe.ProcessInstance;
import org.jbpm.taskmgmt.exe.TaskInstance;

public class Test1 {
 //创建config对象(连接数据库)
 private static JbpmConfiguration config = JbpmConfiguration.getInstance();
// JbpmConfiguration con=JbpmConfiguration.getInstance();
 //创建jbpmContext对象
 private static JbpmContext getContext(){
  JbpmContext   context = config.getCurrentJbpmContext();
  if (context==null)
   context = config.createJbpmContext();
  return context;
  
 }
 //创建表(如果表存在就先删除)
 public static void  createTable(){
  config.createSchema();
 }
 //发布流程(写数据库)
 public  static void deplydefine(){
  //根据xml文件生成流程
  ProcessDefinition pd = ProcessDefinition.parseXmlResource("simple/processdefinition.xml");
  //发布
  getContext().deployProcessDefinition(pd);
  getContext().close();
  
 }
 //实例化流程
 public static  void newInstance(String name){
  //得到“报帐"的流程定义
  ProcessDefinition pd = getContext().getGraphSession().findLatestProcessDefinition("报账");
     //创建"流程实例"
  ProcessInstance   pi = pd.createProcessInstance();
     //把创始人保存起来
  pi.getContextInstance().setVariable("initId", name);
  //发信号,下一步
  pi.getRootToken().signal();
  getContext().close();
 }
 
 //写报销单:谁+报多少+原因
 public static void write(String name,Float money,String msg){
  //得到自己所有没有完成任务
  List<TaskInstance> tis =
   getContext().getTaskList(name);
 // System.out.println(tis.size()+"");
  for (TaskInstance ti:tis){
   System.out.println(ti.getName()+"\t"+ti.getActorId());
   if (ti.getName().equals("写报销单"))
   {
     System.out.println(ti.getActorId());
    ti.getContextInstance().setVariable("money", money);
    ti.getContextInstance().setVariable("msg", msg);
    ti.end();//结束
   }
  }
  getContext().close();
  
 }
 //部门同意否
 public static void agree(int id, boolean f){
  //根据编号找任务
  TaskInstance ti = getContext().getTaskInstance(id);
        if (f)
         ti.end("同意");
        else
         ti.end("不同意");
  
  getContext().close();
 }
 
 public static void main(String[] args) {
 // getContext();
  
 // createTable();
 // deplydefine();
 // newInstance("请假");
  write("请假",100f,"国庆休假");
 // agree(2, false);
 }

}

 

分享到:
评论
1 楼 snowolf819 2009-01-14  
对于我们入门挺不错的,谢谢楼主~~~

相关推荐

    jbmp入门教程,jBPM流程定义语言,业务日历,流程建模

    本教程将深入探讨jBMP的核心概念,包括流程定义语言、业务日历以及流程建模,帮助初学者快速入门。 一、jBPM流程定义语言 jBPM采用的是BPMN 2.0(Business Process Model and Notation)标准,这是一种图形化的流程...

    jbmp3.0.13

    1. **流程建模**:jbmp支持BPMN(Business Process Model and Notation)标准,使得流程模型可以图形化表示,提高业务流程的可读性和理解性。开发者可以通过拖拽方式设计流程图,简化了流程设计过程。 2. **持久化...

    jbmp用户指南(工作流)

    jbmp的用户指南,如《jBPM4_3用户指南.pdf》,通常会详细讲解如何安装和配置jbmp环境,介绍如何使用工具进行流程设计,以及如何在Java应用程序中集成和调用jbmp服务。此外,指南还会包含实例演示,帮助用户理解如何...

    JBMP入门讲解附带实例一个

    5. **集成能力**:JBMP可以方便地与企业应用集成,如EJB、JMS、JPA等,确保业务流程能够在整个企业架构中无缝运行。 6. **监控和报表**:提供监控工具和报表功能,帮助企业管理员监控流程的执行情况,分析性能,...

    jbmp开发入门指南

    工作流技术在企业管理中起着关键作用,它能够自动化处理复杂的业务流程,提高工作效率。尽管目前尚无统一的标准,但工作流框架的需求日益增长,尤其是在需要多步骤审批、协同工作的场景中。jbpm是一个开源的工作流...

    jbmp3.2学习笔记

    在jPDL中,与流程设计相关的文件有三个:processdefinition.xml、gdp.xml、processimage.jpg。其中processdefinition.xml是流程定义的描述文件;gpd.xml是对图形界面呈现的XML描述;而 processimage.jpg则是对图形...

    jboss+jbmp5.3开发手册.rar

    JBMP 5.3 版本是JBoss工作流管理系统的一个重要里程碑,它带来了许多增强功能和优化。这个开发手册将帮助开发者深入了解如何在JBoss环境中集成和使用JBM进行业务流程的管理和实现。 1. **JBM5.3.chm** - 这个CHM...

    jbmp4整合SSH的请假例子

    而JBMP4(Java Business Management Process 4)是一个用于业务流程管理的工具,它可以与SSH框架集成,实现业务流程自动化。 1. Spring框架:Spring的核心是IoC(Inversion of Control)和AOP(Aspect Oriented ...

    根据jbpm4的.jpdl.xml流程定义文件,绘制出流程图

    例如,`&lt;process&gt;`元素代表整个流程,而`&lt;swimlane&gt;`元素定义了流程中的参与者或角色。 2. **识别节点和转换**:在JPDL文件中,你会找到诸如`&lt;action&gt;`、`&lt;event&gt;`、`&lt;condition&gt;`等节点,它们分别对应流程中的动作...

    oa.rar_OA文档_SSH JBMP_jbmp oa_oa_oa ssh

    jbmp oa_oa_oa ssh"表明这是一个与OA(Office Automation,办公自动化)系统相关的压缩文件,其中包含了使用SSH(Spring、Struts、Hibernate)框架和JBMP(Java Business Management Process,Java业务管理流程)...

    myeclipse6.0的jbmp插件

    7. **开发流程**:使用JBMP插件,开发者可以创建EJB组件,定义实体Bean,设置持久化属性,以及创建数据访问对象(DAO),通过这些对象与数据库交互。插件通常会自动生成相应的SQL语句和访问方法,简化开发过程。 8....

    jbmp学习文档

    JBMP(Java Business Management Process)是Java业务流程管理的一种实现,它提供了一套框架用于定义、执行和监控业务流程。本文档将深入介绍JBPM5.1版本,帮助读者从入门到掌握其核心功能。 1. 简介 JBPM是开源的 ...

    chen-jbpm_websale.zip_jbmp_jbmp java_jbpm_jbpm_websale_网上销售系统

    【描述】"网上销售系统,Jbmp的应用例子,有流程开发的例子"表明此项目不仅是一个完整的网上销售系统,还包含了使用JBPM进行流程开发的实际案例。这为我们提供了一个学习和实践工作流管理的宝贵平台,尤其是对于那些...

    jbpm4生成流程图

    jbpm4生成流程图,根据每个不同的流程轨迹把连线变成红色。

    工作流初介绍EOS+JBMP入门

    学习工作流和JBMP,你需要理解如何设计和定义业务流程,例如使用流程图表示活动、决策和流程分支;了解如何使用JBPM的工具创建和部署流程定义;熟悉任务分配和审批机制;并掌握监控和分析流程执行情况的方法,以便...

    jbpm-demo.rar_DEMO_jar_jbmp demo_jbpm struts_jbpm-web tomcat

    这是web-jbpm的开发框架,布署到tomcat...实现了上传流程定义文件.可以数据库中查看 里面的架包是jbpm-starters-kit-3.1.4\jbpm.3\lib下面的所有包; 还有jbpm-starters-kit-3.1.4\jbpm.3\build下面的*.jar包,就可以了

    jbmp 3.0 chm

    JBMP(Java Business Management Process)是早期的一个Java业务流程管理框架,它主要用于在Java应用中实现工作流管理。jbpm 3.0是该框架的一个版本,旨在提供一个灵活且可扩展的平台,用于设计、执行和管理业务流程...

    JBMP练习例子

    通过这个【JBMP练习例子】,开发者可以学习如何配置和使用JBPM框架,创建和部署流程,以及如何在实际业务场景中利用其强大的流程管理能力。同时,这也为开发者提供了在真实环境中测试和调试JBPM流程的机会,从而提高...

    JBoss JBMP用户开发手册

    关于JBoss JBMP-java工作流用户开发手册

Global site tag (gtag.js) - Google Analytics