99偷拍视频精品区一区二,口述久久久久久久久久久久,国产精品夫妇激情啪发布,成人永久免费网站在线观看,国产精品高清免费在线,青青草在线观看视频观看,久久久久久国产一区,天天婷婷久久18禁,日韩动漫av在线播放直播

activiti5.16businessKey如何為null處理。

本篇文章為大家展示了activiti 5.16 businessKey如何為null處理。,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

尼木ssl適用于網站、小程序/APP、API接口等需要進行數據傳輸應用場景,ssl證書未來市場廣闊!成為創新互聯的ssl證書銷售渠道,可以享受市場價格4-6折優惠!如果有意向歡迎電話聯系或者加微信:18980820575(備注:SSL證書合作)期待與您的合作!

activiti版本 5.16

產生原因:創建子流程時,businesskey 不傳遞。

解決如下:

1、創建監聽類:

import org.activiti.engine.delegate.event.ActivitiEntityEvent;
import org.activiti.engine.delegate.event.ActivitiEvent;
import org.activiti.engine.delegate.event.ActivitiEventListener;
import org.activiti.engine.impl.persistence.entity.ExecutionEntity;
import org.activiti.engine.impl.persistence.entity.TaskEntity;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class BusinessKeyInjectionActivitiEventListener implements ActivitiEventListener {
    private Logger log = LoggerFactory.getLogger(getClass());
    @Override
    public void onEvent(ActivitiEvent event) {
        switch (event.getType()) {
            case TASK_CREATED:
                if (event instanceof ActivitiEntityEvent) {
                    ActivitiEntityEvent activityEntityEvent = (ActivitiEntityEvent) event;

                    TaskEntity taskEntity = (TaskEntity) activityEntityEvent.getEntity();
                    ExecutionEntity exEntity = taskEntity.getExecution();
                    String key = exEntity.getBusinessKey();
                    log.info("獲取當前任務的流程實例的businessKey:{}",key);
                    if(StringUtils.isEmpty(key)){
                        ExecutionEntity superExecEntity = exEntity.getSuperExecution();
                        key=superExecEntity.getBusinessKey();
                        if(StringUtils.isEmpty(key)){
                            key=superExecEntity.getProcessInstance().getBusinessKey();
                        }
                        log.info("獲取當前任務 上一個流程實例的businessKey:{}",key);
                        log.info("設置當前流程實例的businessKey:{}",key);
                        exEntity.setBusinessKey(key);
                        //讓businessKey生效 此處非常關鍵。
                        exEntity.updateProcessBusinessKey(key);
                    }
                    break;
                }
            default:
                break;
        }
    }

    @Override
    public boolean isFailOnException() {
        // TODO Auto-generated method stub
        return false;
    }
}

2、配置監聽:

<bean id="processEngineConfiguration" class="org.activiti.spring.SpringProcessEngineConfiguration">
		<property name="dataSource"          ref="dataSourceTech" />
		<property name="jobExecutorActivate" value="true" />
	<!-- 其間的配置見官方demo -->

		<property name="eventListeners">
			<list>
<!--				businessKey空值處理監聽 -->
				<bean class="com.cdel.activiti.listener.BusinessKeyInjectionActivitiEventListener"/>
			</list>
		</property>
		
	</bean>

上述內容就是activiti 5.16 businessKey如何為null處理。,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注創新互聯行業資訊頻道。

當前名稱:activiti5.16businessKey如何為null處理。
網頁鏈接:http://www.yijiale78.com/article30/ihddpo.html

成都網站建設公司_創新互聯,為您提供網站建設網站排名品牌網站制作網站策劃關鍵詞優化網站改版

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

網站優化排名