activiti 问题

1.engine.getRepositoryService().createProcessDefinitionQuery().list()

时运时打印

SQL:select * from ( select a.*, ROWNUM rnum from ( select RES.* from ACT_RE_PROCDEF RES

 order by order by RES.ID_ asc ) a where ROWNUM < ?) where rnum >= ? 为什么

 

 mybatis3.3的bug,需要换成3.2.x

 

 

 2.Activiti设置流程发起用户信息

       1)解决办法很简单只要在启动流程之前调用API即可:

             identityService.setAuthenticatedUserId(userId);

           而且这行代码需要和activiti:initiator配合使用

            <startevent id="startevent1" name="Start" activiti:initiator="applyUserId"></startevent>

 

        2): runtimeService.startProcessInstanceByKey("leave");

               代码启动一个流程,在启动流程的时候会判断有没有activiti:initiator属性,

               如果有属性activiti:initiator的值作为一个变量添加到流程实例中,

               如:applyUserId,不要以为applyUserId是一个特殊的变量,它就是一个普通的变量而已。

 

               <usertask id="reportBack" name="销假" activiti:assignee="${applyUserId}">

                  在流程XML中代码出使用${applyUserId}作为activiti:initiator的值,

                 引擎会在创建任务的使用用变量                    applyUserId替换

 

               //设置当前用户 

 

               processEngine.getIdentityService().setAuthenticatedUserId(currentUserId);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值