`
wetouns
  • 浏览: 25553 次
  • 性别: Icon_minigender_1
  • 来自: 南宁
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

总结SEAM中为JBPM服务的一些内置组件和注解

阅读更多
SEAM内建的一些为JBPM服务的组件以及针对JBPM的注释

组件篇:
Actor 
我们要让JBPM"知道"当前的用户是谁,这样它才能够通过此组件提供的ID来指派任务,所以就需要把当前登陆用户的标识放到Actor的ID里边

taskInstanceList 
当Actor指定好后,SEAM会把当前用户没有完成的任务列表放入这个组件

pooledTaskInstanceList 
该组件存储了所有没有被指派的任务的列表

pooledTask 
该组件有一个方法:pooledTask.assignToCurrentActor(),用于指派一个任务给当前用户,配合s:button或者s:commandlink使用,在taskInstance属性里把任务实体设置好就可以了.

taskInstanceListForType['type'] 
该组件存储了指派给当前用户的特定类型的任务列表.type指的是任务名称

注解篇:
@CreateProcess(definition="todo") 
用于创建一个新的业务流程,创建的同时,SEAM会帮你把流程持久化到指定好的数据库里.参数definition指的是流程的名字

@StartTask 
开始一个任务

@EndTask(transition="completed") 
结束任务.transition用于指定跳转到哪个结点.

@ResumeProcess(definition="OrderManagement", processKey="#{orders.rowData.orderId}")
通过指定的参数来将当前的conversation关联到指定的process上.definition指定了特定的流程定义.processKey指定流程ID

这些注释都是在方法级别上的,只能加在方法上
暂时就总结这么多,如果有缺少的大伙提个醒我再补上

重新编辑了,谢谢dearshor 的提醒
分享到:
评论
1 楼 dearshor 2008-12-02  
wetouns 写道
askInstanceListForType['type'] 
该组件存储了指派给当前用户的特定类型的任务列表.type指的是任务名称,即节点名称

type就是任务的名字,但不是任务节点(taskNode)的名字。

wetouns 写道
元注释篇:

注释就注释,不要说“元”。annotation翻译成“注解”更好,和Java代码注释,javadoc注释里面的“注释”以示区别。
不是所有的注解都是元注解,注解除了元注解,还有其他注解。

wetouns 写道
@StartTask 
开始一个任务(指的是当前节点的任务)

没有“当前节点的任务”一说。使用这个annotation的时候,界面的<s:link>/<s:button>要提供一个taskInstance实例,@StartTask才能知道要start哪一个task。

wetouns 写道
@EndTask(transition="completed") 
结束任务,结束后自动跳到下一个任务节点,如果下面有多个结点,就使用transition来指定跳转到哪个结点,反之则无须定义

结束一个task后,不会“自动跳到下一个任务节点”,而是仍然停留在那个tasknode上,必须通过设置@EndTask(transition="next node")来实现transition。不要将pageflow和business process的transition混为一谈了,这两个是相对独立进行的。
任务结束后business process并没有end,要达到EndState时,business process才会end。

wetouns 写道
@ResumeProcess(definition="OrderManagement", processKey="#{orders.rowData.orderId}")
通过指定的参数来获得指定的流程.definition指定了特定的流程定义.processKey指定流程ID

这个annotation主要不是用来获得process,而是将当前的conversation关联到指定的process上。


最后给你点建议,看的出来你没有去看过这些annotation的api doc。其实api doc上对这些注解的解释还是相当详细的。建议去看一下。

相关推荐

    Seam JBPM Eclipse工程例子

    Seam、JBPM、EJB和JSF是Java开发中的重要技术栈,它们在企业级应用开发中扮演着核心角色。下面将详细解释这些技术及其在"Seam JBPM Eclipse工程例子"中的应用。 1. **Seam**: Seam是一个全面的Java EE框架,它...

    Seam - 语境相关的组件

    Seam是一种Java EE框架,它在开发企业级应用程序时提供了高度集成和语境相关的组件模型。这个框架的主要目标是简化复杂性,使开发者能够更高效地构建动态、响应式的Web应用。Seam的核心理念是将不同的技术,如Java...

    JBoss Seam 工作原理、seam和hibernate的范例、RESTFul的seam、seam-gen起步、seam组件、配置组件、jsf,jboss、标签、PDF、注解等等

    1.4. Seam 和jBPM:待办事项列表(todo list)示例..................................................................................................... 32 1.4.1. 理解代码....................................

    seam的注解和标签

    在实际开发中,Seam注解和标签的结合使用可以极大地简化代码,提高开发效率。例如,通过`@Name`和`@In`注解,可以轻松地管理依赖关系;利用`@Entity`和`@Table`注解,可以方便地实现数据持久化;而`&lt;s:form&gt;`和`s:...

    Seam - 语境相关的组件 .pdf

    它结合了多种技术,如JavaServer Faces (JSF)、Enterprise JavaBeans (EJB)、Hibernate ORM、jBPM工作流以及RESTful服务,提供了一种语境相关的组件模型,使开发者能够更加高效地构建复杂的应用程序。 在Seam入门...

    jbpm简介\jbpm简介

    4. **支持多种流程定义语言**:除了默认支持的jPDL、WS-BPEL和Seam框架的Pageflow外,jBPM还计划支持更多流程定义语言,以适应不同的业务场景需求。 5. **严格的流程版本控制**:jBPM提供了严格的版本控制机制,...

    Jboss Seam中文版

    最后一章重点介绍了如何通过配置文件和注解等方式来定制Seam组件的行为。 1. **通过属性设置配置组件**:说明了如何使用属性来调整组件的默认行为。 2. **后续内容预告**:预览了接下来章节中可能涵盖的更高级的...

    JBOSS SEAM组件中文手册

    3. **Seam生成器(Seam Generator)**: 提供了一套工具,用于快速生成Seam项目和组件的模板代码,加速开发进程。 4. **测试框架**: Seam 2.0引入了集成测试框架,使得单元测试和集成测试变得更加方便。 5. **国际...

    jboss Seam2.0 语境相关的组件文档

    例如,Seam引入了`@Name` 注解,允许在没有JavaBeans约定的情况下为组件命名,以及`@Factory` 注解,用于创建组件的工厂方法。 **5. 事件处理** Seam的事件模型允许组件间异步通信。使用`@Create`、`@Destroy`等...

    Seam-语境相关的组件

    它的核心理念是将Web和企业服务的复杂性与业务逻辑的简洁性相结合,提供一个无缝的开发环境。Seam通过其上下文相关的组件模型,实现了这一目标,使得开发人员可以更高效地工作,而无需关注底层的集成细节。 Seam的...

    jboss-seam 注解

    ### jboss-seam 注解详解 ...以上是对JBoss Seam中常用注解的详细介绍,这些注解可以帮助开发者更好地管理和控制组件的行为和作用域。通过合理地使用这些注解,可以有效地提高应用程序的性能和可维护性。

    SEAM 中文开发指南

    - **工作原理**:这个示例演示了如何利用 SEAM 和 jBPM 来实现工作流集成,具体包括任务的分配、跟踪和完成等。 ##### 1.5 SEAM 页面流:猜数字游戏示例 - **代码分析**: - 通过 SEAM 的页面流功能实现简单的猜...

    jboss seam 2.01GA REF DOC

    - **Seam 和 jBPM 集成**:通过将 Seam 组件与 jBPM 流程引擎相结合,实现业务流程的自动化。 - **任务管理**:Seam 负责用户界面和交互逻辑,jBPM 负责处理任务的执行流程。 **1.4.2 工作原理** - **流程定义**:...

    jboss seam 学习资料,seam in action和官方手册

    8. **Seam组件**:了解如Conversation、Transactions、邮件服务等Seam内置组件的使用方法。 9. **实时性与Ajax**:探索Seam如何实现实时更新和Ajax功能,提升用户体验。 ### Seam官方参考手册 Seam官方参考手册...

    jboss seam 教程

    - **JBoss Seam**:由JBoss提供的Seam实现,提供了一系列功能强大的工具和服务,帮助开发者快速构建复杂的Web应用。 - **本教程**:主要介绍了JBoss Seam的基本概念、核心组件以及通过一系列示例项目来学习Seam的...

    seam_reference.pdf

    - **待办事项示例**(Seam and jBPM: the todo list example):这个示例结合了Seam和jBPM(Java Business Process Management),演示了如何将工作流集成到Seam应用中。具体包括任务的创建、分配和完成等操作。 - *...

    seam一些基本功能的实现方法

    使用Seam的`@Entity`和`@PersistenceContext`注解,开发者可以直接在组件中进行CRUD(创建、读取、更新、删除)操作,而无需编写大量的DAO(数据访问对象)代码。 Seam还支持AJAX(异步JavaScript和XML),通过Seam...

    jboss seam 中文文档

    - **内置组件**:Seam 提供了一系列预定义的组件,可以直接使用,无需手动创建。 #### 五、Seam 组件配置 - **通过属性设置来配置组件**:可以通过配置文件或者注解的方式为组件指定各种属性值。 - **条件安装**:...

Global site tag (gtag.js) - Google Analytics