Osworkflow初探(二)--osworkflow流程中的角色问题

本文探讨了osworkflow中流程的分流(split)与汇聚(join)机制。通过具体配置示例,详细介绍了如何在一个节点处分流成多个独立流程,并在各分支完成后汇总至下一个节点。此外还提到了上下级流程流转的简化处理。

osworkflow中的角色问题就是在流程流转的过程中,如何将指定的步骤传到具体的某个人那里。。。。(有点山药蛋的味道。。。)

 

我们这里的流程其实有两种情况(现在意识的):

1.平级的流程流转

2.上下级的流程流转

 

对于平级的情况,可能存在split和join的情况,在owf中可以通过split将请求转到其他的多个节点,实例:

<unconditional-result old-status="Finished" status="Underway" split="1"/>

 

对应的split 1就是:

<splits>
        <split id="1">
            <unconditional-result old-status="Finished" status="Underway" owner="${assistant}" step="2"/>
            <unconditional-result old-status="Finished" status="Underway" owner="${assistant}"  step="3"/>
<!--            <unconditional-result old-status="Finished" status="Underway" owner="${assistant}" step="2"/>-->
        </split>
        <split id="2">
            <unconditional-result old-status="Finished" status="Underway" owner="${assistant}"  step="3"/>
        </split>
    </splits>

 

这里尽管我们转到step 2和3的是同一个owner,我们可以指定多个owner来实现不同的用户转向不同的环节。

 

对于join的情况,我们继续看这个例子,在step 2和3的result中都指向同一个join:

<results>
            <unconditional-result old-status="Finished" join="1" />
 </results>

 

<joins>
        <join id="1">
            <conditions type="AND">
                <condition type="beanshell">
                    <arg name="script"><![CDATA[
                    "Finished".equals(jn.getStep(2).getStatus()) && "Finished".equals(jn.getStep(3).getStatus())
                    ]]></arg>
                </condition>
            </conditions>
            <unconditional-result old-status="Finished" status="Underway" owner="${academician}" step="4"/>
        </join>
    </joins>

 

上面的代码就实现了,在一个节点处分成多个流,每个流(这里确切的说是一个步骤)都完成一件独立的事件,然后再所有这些流都完成的情况下汇总到一个下个节点。

 

上下级之间的转换就比较简单了。。。。

 

p.s:据说split和join不能再以一个split或join作为result了,切记,切记!!

 

 

 

下载方式:https://pan.quark.cn/s/c9b9b647468b ### 初级JSP程序设计教程核心内容解析#### 一、JSP基础概述JSP(JavaServer Pages)是由Sun Microsystems公司创建的一种动态网页技术规范,主要应用于构建动态网站及Web应用。JSP技术使得开发者能够将动态数据与静态HTML文档整合,从而实现网页内容的灵活性和可变性。##### JSP的显著特性:1. **动态与静态内容的分离**:JSP技术支持将动态数据(例如数据库查询结果、实时时间等)嵌入到静态HTML文档中。这种设计方法增强了网页的适应性和可维护性。2. **易用性**:开发者可以利用常规的HTML编辑工具来编写静态部分,并通过简化的标签技术将动态内容集成到页面中。3. **跨平台兼容性**:基于Java平台的JSP具有优良的跨操作系统运行能力,能够在多种不同的系统环境中稳定工作。4. **强大的后台支持**:JSP能够通过JavaBean组件访问后端数据库及其他资源,以实现复杂的数据处理逻辑。5. **执行效率高**:JSP页面在初次被请求时会被转换为Servlet,随后的请求可以直接执行编译后的Servlet代码,从而提升了服务响应的效率。#### 、JSP指令的运用JSP指令用于设定整个JSP页面的行为规范。这些指令通常放置在页面的顶部,向JSP容器提供处理页面的相关指导信息。##### 主要的指令类型:1. **Page指令**: - **语法结构**:`<%@ page attribute="value" %>` - **功能**:定义整个JSP页面的运行特性,如设定页面编码格式、错误处理机制等。 - **实例**: ...
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值