`
heweina2007
  • 浏览: 68816 次
  • 性别: Icon_minigender_2
  • 来自: 沈阳
社区版块
存档分类
最新评论

ssh+jpbm4.4项目中DecisionHandler、AssignmentHandler等实现类中使用spring bean

    博客分类:
  • JBPM
阅读更多
package processmanager.handler;

import org.jbpm.api.jpdl.DecisionHandler;
import org.jbpm.api.model.OpenExecution;
import org.jbpm.pvm.internal.env.EnvironmentImpl;

import processmanager.service.IProcessManagerService;
import processmanager.serviceimpl.ProcessManagerServiceImpl;

/**
 * 判断申请人的角色是不是经理
 * @author heweina
 * processmanager.handler.IsManagerHandler.java
 * 2011-4-8 下午02:45:37
 */
public class IsManagerHandler implements DecisionHandler{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	//spring 管理的bean
	private IProcessManagerService processManagerService;
	
	public IProcessManagerService getProcessManagerService() {
		return processManagerService;
	}

	public void setProcessManagerService(
			IProcessManagerService processManagerService) {
		this.processManagerService = processManagerService;
	}

	public String decide(OpenExecution execution) {
		//获取spring管理的bean,注意:通过get、set方法直接获取为空
  		processManagerService =  EnvironmentImpl.getFromCurrent(ProcessManagerServiceImpl.class);
  
  		//获取请假申请人ID
		String userId = (String)execution.getVariable("leaver");
		
		//获取请假人的权限
		String authority = processManagerService.getUserPowerByUserId(userId);

		//获取经理的Id
		String managerId = processManagerService.getManagerId();
		
		//是否是经理
		String isManager = "";

		if(authority.equals(managerId)){
			isManager = "是";
		}else{
			isManager = "否";
		}
		
		return isManager;

	}
}

 

分享到:
评论
1 楼 『抹·茶』 2014-06-11  
大哥,写坝啦磕叽的还不如不写

相关推荐

    ssh2+jbpm4.4 完整请假流程

    自从前些日子发布了如何整合JBPM4.4+ssh2后,有些朋友问我有没有一个完整一点的实例,我看过贩卖你的jbpm的教程,我就参考那个请假的实例把它改装成ssh2版的吧。顺便也加入了模拟不同的角色登陆后能接到不同的待办...

    ssh+jbpm整合好的demo

    SSH代表Struts2、Spring和Hibernate,它们分别是MVC框架、依赖注入容器和对象关系映射库,而JBPM则是一个开源的工作流和业务流程管理(BPM)系统。下面将详细解释这些组件以及它们如何协同工作。 **Struts2** 是一...

    jbpm4.4+ssh

    【jbpm4.4+SSH】是一个集成的Java企业级应用框架,主要涉及的是工作流管理系统jbpm4.4与Spring、Struts2(SSH)三大框架的整合。jbpm4是一个开源的工作流程管理系统,它提供了流程定义、执行、监控和优化等一系列...

    jpbm4.4开发指南,做工作流的

    jBPM的孵化器功能提供了定时器、group活动、foreach实现动态分支等高级特性,这些特性在复杂的业务流程中非常有用。 #### 事务和持久化 事务管理在工作流执行中起着至关重要的作用。jBPM提供了独立事务、JTA事务和...

    jpbm4.4学习文档及数据库表结构

    jbpm4.4入门学习的好文档 1.工作流基础 2.开发环境 3.核心概念与相关api 4.processenginee serviceapi 5.管理流程定义 6.执行流程实例 7.流程定义语言 8.应用 与其他框架的集成

    Myeclipse8.6集成jBPM4.4插件

    - **创建项目**:在MyEclipse中新建一个jBPM项目,项目类型可以选择jbpm-process或jbpm-service等,这会自动生成必要的项目结构和配置文件。 - **设计流程**:利用jBPM提供的图形化流程设计器,你可以拖拽不同的...

    工作流jpbm集成在ssh中(非原创)

    【工作流jBPM集成在SSH中的实现】 工作流(Workflow)系统是企业信息化建设中的重要组成部分,它能够帮助企业规范业务流程,提高工作效率。jBPM(Java Business Process Management)是一个开源的工作流管理系统,...

    jbpm用户手册(中文)chm

    jpbm4.4 用户手册 中文 chm 工作流

    JBoss+jBPM+jPDL用户开发手册_3.2.3

    7. **集成与扩展**:手册会讨论如何将jBPM集成到现有的应用程序中,如与Spring框架的集成,以及如何通过插件或自定义组件扩展jBPM功能。 8. **监控与管理**:jBPM提供了监控和管理工具,用于查看流程实例的状态、...

    springmvc_jpbm5_document.zip_spring mvc

    4. **Springmvc3实现文件上传**:文件上传是Web开发中的常见需求,这部分可能讲解了如何使用Spring MVC 3来处理文件上传,包括接收文件、存储文件、处理异常等。 5. **使用SpringMVC(spring3_0)自带的json**:这...

    spring整合JPBM3.2

    在Spring中,通常会使用`ApplicationContext`来加载这些配置,并将Jbpm的相关bean注入到Spring的应用上下文中。 总的来说,Spring整合Jbpm3.2涉及到的关键点包括: 1. 引入`spring-modules-jbpm31.jar`库。 2. 在`...

    JBPM4.4 入门小例子

    JPBM4.4入门小例子,适合刚开始准备学工作流的筒子们。。

    JBPM4.4会签实例

    通过学习"CountersignDemo"这个实例,你可以深入了解JBPM4.4的会签实现,包括如何设计流程、创建自定义活动、编写工具类以及如何在实际应用中部署和使用。这将有助于提升你对业务流程管理的理解,使你能更好地为企业...

    myeclipse中安装jpbm插件

    ### myeclipse中安装jpbm插件 #### 背景介绍 在软件开发过程中,集成各种插件是提高工作效率的重要手段之一。对于使用MyEclipse进行Java开发的工程师而言,安装JBPM(Business Process Management)插件可以极大地...

    jpbm公文流转实现

    在实际应用中,"oa_09"可能代表该系统的一个特定版本或者一个特定的模块,它可能包含了公文流转实现的详细代码、配置文件、数据库脚本等资源。对于开发人员来说,理解这些资源的结构和作用,是深入学习和优化"jpbm...

    流程控制应用JPBM

    综上所述,这个压缩包的文件组合表明了博主可能在探讨如何使用Spring、Struts2等Java框架,结合MySQL数据库来实现业务流程的控制和管理。可能涉及的内容包括配置这些框架,创建和管理业务对象,以及使用日志系统进行...

    JPBM实战经验以及相关参考文档

    通过使用JPBM,企业可以更有效地管理其复杂的业务流程,实现流程自动化,并确保符合业务规则和法规要求。JPBM的主要特点包括灵活的流程定义语言(JPDL)、强大的事件处理机制以及与各种持久化层的集成能力。 在安装...

    深入浅出JPBM 第9章相关源代码

    在JPBM项目中,可能会有定义流程定义的BPMN(Business Process Model and Notation)文件,实现业务逻辑的Java类,以及相关的配置文件,如数据库连接配置、事务管理设置等。 4. **BPMN文件**:BPMN是一种图形化语言...

Global site tag (gtag.js) - Google Analytics