`
hongsoft
  • 浏览: 299952 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

(2)jBPM websale代码学习: home.jsp(显示任务列表)

阅读更多

//调用homeBean的getTaskInstances方法,得到一个LIST。该LIST的每个元素的名称为 var="taskInstance"

<h:dataTable value="#{homeBean.taskInstances}" var="taskInstance" headerClass="tableheader" columnClasses="tablecell">

//h:column表示一列,相当于JSP中的 TD
  <h:column >

 //f:facet 表示列表表头
    <f:facet name="header">
      <h:outputText value="Task Form Link" />
    </f:facet>

 //h:commandLink相当于我们平常的href,action表示点击后要执行的动作
    <h:commandLink action="#{homeBean.selectTaskInstance}">

    //f:param是在jsf中传递变量的方法
      <f:param name="taskInstanceId" value="#{taskInstance.id}"/>

 //h:outputText 表示要显示的任务的名称
      <h:outputText value="#{taskInstance.name}" />
    </h:commandLink>
  </h:column>
  <h:column>
    <f:facet name="header">
      <h:outputText value="Process" />
    </f:facet>
    <h:outputText value="#{taskInstance.taskMgmtInstance.taskMgmtDefinition.processDefinition.name}" />
  </h:column>
  <h:column>
    <f:facet name="header">
      <h:outputText value="Version" />
    </f:facet>
    <h:outputText value="#{taskInstance.taskMgmtInstance.taskMgmtDefinition.processDefinition.version}" />
  </h:column>
</h:dataTable>

用上面的JSF代码就显示了当前进入系统的用户的任务列表,点其中的一个任务名称后,就执行下面的代码:

homeBean.java:

 

public String selectTaskInstance() {
    // Get the task instance id from request parameter
    long taskInstanceId = JsfHelper.getId("taskInstanceId");
    TaskInstance taskInstance = taskMgmtSession.loadTaskInstance(taskInstanceId);
    taskBean.initialize(taskInstance);
    return "task";
  }

其中,从request中取parameter的方法如下:

public static long getId(String parameterName) {
    long value = -1;
    String valueText = (String) FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get(parameterName);
    try {
      Long id = new Long(valueText);
      value = id.longValue();
    } catch (NumberFormatException e) {
      throw new RuntimeException("couldn't parse '"+parameterName+"'='"+valueText+"' as a long");
    }
    return value;
  }

jBPM把parameter的读取都用自己的方法封装起来,达到了简化和快速开发的目的。

分享到:
评论

相关推荐

    jbpm jbpm4.3.jar

    jbpm jbpm4.3.jar DDDDDDDD

    jbpm_websale.rar_JSF_java JBPM_jbpm_jbpm websale_websale jb

    【jbpm_websale.rar】是一个包含JBPM(Business Process Management)网上销售示例的压缩包,这个实例对于初学者理解和掌握JBPM技术及其在Java Web应用中的实践非常有帮助。该实例结合了JSF(JavaServer Faces)前端...

    JBPM4.4所需要的包.rar

    3. **jbpm.jar**: 这是JBPM的主要库文件,包含了流程引擎、工作流服务、持久化等核心功能。它提供了对流程定义、实例管理、任务分配、事件处理等功能的支持,使得开发者可以轻松地集成业务流程到Java应用中。 4. **...

    JBPM采购申请系统——06_JBPM版本控制及Token对象.7z

    JBPM采购申请系统——06_JBPM版本控制及Token对象.7z JBPM采购申请系统——06_JBPM版本控制及Token对象.7z JBPM采购申请系统——06_JBPM版本控制及Token对象.7z JBPM采购申请系统——06_JBPM版本控制及Token对象.7z ...

    jbpm-gpd-site 4.4.zip

    jbpm-gpd-site 4.4.zip 是一个与jbpm(Java Business Process Management)相关的压缩文件,它包含的是jbpm-eclipse插件的特定版本,适用于jbpm 4.4框架。jbpm是一个开源的工作流管理系统,用于设计、执行和管理业务...

    JBPM采购申请系统——21_JBPM4.0与JBPM3.0差异(一).7z

    JBPM采购申请系统——21_JBPM4.0与JBPM3.0差异(一).7z JBPM采购申请系统——21_JBPM4.0与JBPM3.0差异(一).7z JBPM采购申请系统——21_JBPM4.0与JBPM3.0差异(一).7z JBPM采购申请系统——21_JBPM4.0与JBPM3.0差异(一)...

    JBPM采购申请系统——22_JBPM4.0与JBPM3.0差异(二).7z

    JBPM采购申请系统——22_JBPM4.0与JBPM3.0差异(二).7z JBPM采购申请系统——22_JBPM4.0与JBPM3.0差异(二).7z JBPM采购申请系统——22_JBPM4.0与JBPM3.0差异(二).7z JBPM采购申请系统——22_JBPM4.0与JBPM3.0差异(二)...

    JBPM采购申请系统——03_JBPM配置文件与jbpmConfiguration对象.7z

    JBPM采购申请系统——03_JBPM配置文件与jbpmConfiguration对象.7z JBPM采购申请系统——03_JBPM配置文件与jbpmConfiguration对象.7z JBPM采购申请系统——03_JBPM配置文件与jbpmConfiguration对象.7z JBPM采购申请...

    JBPM数据库表创建\jbpm.jpdl.oracle.sql

    JBPM数据库表创建\jbpm.jpdl.oracle.sqlJBPM数据库表创建\jbpm.jpdl.oracle.sqlJBPM数据库表创建\jbpm.jpdl.oracle.sqlJBPM数据库表创建\jbpm.jpdl.oracle.sqlJBPM数据库表创建\jbpm.jpdl.oracle.sql

    jbpm-3.1.2.zip_jbpm_jbpm 3.1.2_jbpm-3.1.2.rar_jbpm3.1.2_工作流

    jbpm-3.1.2.zip 文件包含了 jBpm 的一个重要版本——jBpm 3.1.2,这是一个开源的工作流管理系统,专为构建灵活且可扩展的业务流程解决方案而设计。jBpm 提供了一种方式,使得开发者能够用简单而强大的语言来表达业务...

    family168-jBPM 4视频教程的代码.rar

    2. **用户界面构建**:通过使用JSP、Servlet、JSF等技术,我们可以构建出与jbPM交互的前端页面,实现用户对流程的控制。 3. **安全认证**:jbPM支持Spring Security等框架,用于实现用户权限管理和认证,确保只有...

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

    【标题】"chen-jbpm_websale.zip_jbmp_jbmp_java_jbpm_jbpm_websale_网上销售系统" 提供的是一个基于JBPM(Java Business Process Management)技术的网上销售系统的示例项目。JBPM是一个开源的工作流管理系统,它...

    尚学堂OA项目源码

    系统功能包括: 个人办公:1.我的办公桌,2.我的便签,3.我的任务,4....公文管理:1....数据库采用MYSQL(可以自己修改),其中工作流程模块运用JBPM技术实现,值得参考学习。已测试成功,请放心使用

    JBPM工作流程API和Jar.zip

    JBPM(Java Business Process Management)是一个开源的工作流和业务流程管理系统,它允许开发者设计、执行、管理和监控复杂的...通过深入学习和实践,开发者能够充分利用JBPM构建灵活、可扩展的企业级工作流程系统。

    JBPM的文档说明详细

    ### JBPM环境搭建与初步体验 #### 一、前言 JBPM(JBoss Business Process Management)是一款开源的业务流程管理引擎,它基于Java技术,能够支持多种业务流程建模语言,例如BPMN2.0。JBPM不仅提供了一个强大的...

    jBPM4.4工作流开发指南.docx

    jBPM4.4工作流开发指南 jBPM4.4是一种流行的工作流引擎,它提供了一个强大且灵活的工作流管理系统。本指南将详细介绍jBPM4.4的安装、部署、使用、开发和原理等方面的知识点。 一、开发环境搭建 要开发jBPM4.4工作...

    jbpm-bpmn2-5.1.0.Final.jar

    jbpm-bpmn2-5.1.0.Final.jar jbpm5

    eclipse配置jBPM(jbpm-test-6.1.0.Final.jar)

    【标题】"eclipse配置jBPM(jbpm-test-6.1.0.Final.jar)"涉及的是在Eclipse集成开发环境中配置jBPM(Java Business Process Management)框架的实践教程。jBPM是一个开源的工作流和业务流程管理平台,它允许开发者...

Global site tag (gtag.js) - Google Analytics