差沙的密码 -- SSHWSFC's code
阅读本Blog请自备塑料袋一只
posts - 14,  comments - 59,  trackbacks - 0

ProcessInstance里面有一个findToken(String tokenPath)方法。这里面写的是tokenPath。 tokenPath跟文件系统的规则差不多。类似 /fork1/fork2 这样的。

那么,怎么到fork2下的一个分支token ?

token自己也有findToken这个方法,不同的是ProcessInstance的是以rootToken为起点,token自己的是以自己为起点。那么取到token2下面的分支

token2.findToken("token")
如果有返回token,没有返回null


至于token的名字,我刚才查源码才发现,只有在Fork节点才会给token赋予名字。。。

那么token2.findToken("token") 这里"token"那里来

命名的规则,如下。。 

    String tokenName = null;
    
if ( transitionName != null ) {
      
if ( ! parent.hasChild( transitionName ) ) {
        tokenName 
= transitionName;
      }
 else {
        
int i = 2;
        tokenName 
= transitionName + Integer.toString( i );
        
while ( parent.hasChild( tokenName ) ) {
          i
++;
          tokenName 
= transitionName + Integer.toString( i );
        }

      }

    }
 else // no transition name
      int size = ( parent.getChildren()!=null ? parent.getChildren().size()+1 : 1 );
      tokenName 
= Integer.toString(size);
    }

    
return tokenName; 



这里"token"那里来?这个token名字,你自己可以根据命名规则得到 。看到这里应该很明了了

token的命名规则;首先根据transitionName的名字命名,这个transitionName的名字是你自己的写的你不可能不知道。 如果transitionName的名字重名了,加自然数区分 当然,如果transitionName没有名字,用分支的个数+1作为名字。

应该比较清楚了。

PS:这个是qq聊天记录的整理版,所以说话比较诡异。为的是记录下来避免忘记,也感谢群里的朋友。发现互相解决问题是提高水平的一个捷径。。

posted on 2007-04-24 16:04 差沙 阅读(2366) 评论(1)  编辑  收藏 所属分类: avaj

FeedBack:
# re: JBPM的Token路径问题
2007-04-24 16:45 | lang
你有没有准备把这个东西给集成到ss中去阿!  回复  更多评论
  

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


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问  
 
这家伙很懒,但起码还是写了一句话。

<2007年4月>
25262728293031
1234567
891011121314
15161718192021
22232425262728
293012345

常用链接

留言簿(8)

随笔分类

随笔档案

文章分类

搜索

  •  

最新评论

阅读排行榜

评论排行榜