yyg1107

这家伙很懒,什么都没有留下
posts(15) comments(20) trackbacks(0)
  • BlogJava
  • 联系
  • RSS 2.0 Feed 聚合
  • 管理

公告

联系方式:     



常用链接

  • 我的随笔
  • 我的评论
  • 我的参与
  • 最新评论

留言簿

  • 给我留言
  • 查看公开留言
  • 查看私人留言

随笔分类(11)

  •  axis(1)
  •  hibernate(1)
  •  java(2)
  •  js(2)
  •  other(5)

随笔档案(8)

  • 2008年6月 (1)
  • 2007年8月 (2)
  • 2007年4月 (3)
  • 2006年11月 (2)

文章分类(37)

  •  C++Builder(3)
  •  eclipse(2)
  •  html(4)
  •  java(8)
  •  jbpm(6)
  •  JS(4)
  •  other(4)
  •  question handly!(4)
  •  web容器(1)
  •  workflow(1)

文章档案(36)

  • 2007年4月 (2)
  • 2007年3月 (1)
  • 2007年1月 (2)
  • 2006年12月 (2)
  • 2006年11月 (3)
  • 2006年10月 (11)
  • 2006年9月 (2)
  • 2006年7月 (2)
  • 2006年6月 (1)
  • 2006年5月 (1)
  • 2006年4月 (6)
  • 2006年3月 (3)

新闻档案(1)

  • 2007年1月 (1)

收藏夹(16)

  •  好的BLOG(9)
  •  收藏----blog(7)

JavaBlog

  • amigoxie

matrix

搜索

  •  

积分与排名

  • 积分 - 32784
  • 排名 - 1317

最新评论

  • 1. re: JS实现文本框输入提供选择框的提示功能-1
  • werewrewrwer
  • --wrewrwe
  • 2. re: struts启动的一个错误!
  • 更名struts-config.xml, remove && add struts capability,重新生成一个config.xml。
  • --barryken
  • 3. p
  • 42
  • --2
  • 4. re: hql语句----随机查询取头10条记录[未登录]
  • 没意思,这不就是分页的那一部分代码嘛!
  • --啊啊
  • 5. re: 第一次做成功的AXIS例子[未登录]
  • 楼主:能不能留下你的联系方式!探讨一下相关问题...
  • --hehe

阅读排行榜

  • 1. JS实现文本框输入提供选择框的提示功能-1(7293)
  • 2. 第一次做成功的AXIS例子(2431)
  • 3. 命令行创建ODBC数据源(1545)
  • 4. struts启动的一个错误!(1265)
  • 5. hibernate调用存储过程例子(1007)

评论排行榜

  • 1. JS实现文本框输入提供选择框的提示功能-1(7)
  • 2. 第一次做成功的AXIS例子(5)
  • 3. struts启动的一个错误!(4)
  • 4. 转:如何在JAVA中使用日期 (0)
  • 5. 命令行创建ODBC数据源(0)

View Post

[转]一个JBPM工作流管理示例(三)

(二)Decision
package  kellerdu.jbpm.delegation; 
import  org.jbpm.delegation. * ;
import  kellerdu.jbpm.LogsFactory;
import  org.apache.commons.logging.Log;
import  kellerdu.jbpm.Constants;

public   class  ChiefDecision  implements  DecisionHandler  {
    
public  ChiefDecision()  {
    }


    
/** */ /**
     * 判断是否需要主管批准,决定下一个要进行的transition
     *
     * 
@param  executionContext ExecutionContext
     * 
@return  String
     * @todo Implement this org.jbpm.delegation.DecisionHandler method
     
*/

    
public  String decide(ExecutionContext executionContext)  {
        Log log
= LogsFactory.getLogInstance( this .getClass());
        String ac
= (String)executionContext.getVariable(Constants.USER_NAME);
        
if (ac != null && (ac.equals( " dali " ) || ac.equals( " wang " ))) {
            log.info(ac
+ " 需要老板批准! " );
            
return   " BossApprove " ;
        }
else {
            log.info(ac
+ " 需要先经主管批准 " );
            
return   " ChiefApprove " ;
        }

    }

}


(三)fork
package  kellerdu.jbpm.delegation;

import  org.jbpm. * ;
import  org.jbpm.delegation. * ;
import  org.jbpm.model.execution. * ;
import  java.util. * ;

public   class  DecidedJoin  implements  JoinHandler  {
    
public  DecidedJoin()  {
    }


    
/** */ /**
     * fork,只要一个分支到达,即可进行下一步操作,同时取消其它同时进行的分支。
     * 这里就是用户如果取消,请假就取消。如果用户请假批准,则用户不能取消。
     *
     * 
@param  forkContext ForkContext
     * 
@throws  ExecutionException
     * @todo Implement this org.jbpm.delegation.ForkHandler method
     
*/

    
public   void  join(JoinContext joinContext)  throws  ExecutionException  {
        Iterator it
= joinContext.getConcurrentTokens().values().iterator();
        Token arrivingToken 
=  joinContext.getToken();
        
while (it.hasNext()) {
            Token to
= (Token)it.next();
            
if (to.getId().equals(arrivingToken.getId())) {
                
// 取消其它执行的Token
                joinContext.getExecutionService().cancelToken(to.getId());
            }

        }

         
//  reactivate the parent token.
          joinContext.reactivateToken( arrivingToken.getParent() );
    }

}



posted on 2006-04-11 16:11 young 阅读(231) 评论(0)  编辑  收藏 所属分类: jbpm

新用户注册  刷新评论列表  

只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问   管理
相关文章:
  • [转]一个JBPM工作流管理示例(三)
  • [转]一个JBPM工作流管理示例(二)
  • [转]一个JBPM工作流管理示例(一)
  • 第一个工作流的例子
  • Seam 1.0 beta 2 发布-Java EE 5开发框架
  • [转]JBoss jBPM 3.1 发布- 开源工作流引擎
 
 
Powered by:
BlogJava
Copyright © young