本篇文章為大家展示了activiti 5.16 businessKey如何為null處理。,內(nèi)容簡明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。
尼木ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書未來市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18980820575(備注:SSL證書合作)期待與您的合作!
activiti版本 5.16
產(chǎn)生原因:創(chuàng)建子流程時(shí),businesskey 不傳遞。
解決如下:
1、創(chuàng)建監(jiān)聽類:
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("獲取當(dāng)前任務(wù)的流程實(shí)例的businessKey:{}",key); if(StringUtils.isEmpty(key)){ ExecutionEntity superExecEntity = exEntity.getSuperExecution(); key=superExecEntity.getBusinessKey(); if(StringUtils.isEmpty(key)){ key=superExecEntity.getProcessInstance().getBusinessKey(); } log.info("獲取當(dāng)前任務(wù) 上一個(gè)流程實(shí)例的businessKey:{}",key); log.info("設(shè)置當(dāng)前流程實(shí)例的businessKey:{}",key); exEntity.setBusinessKey(key); //讓businessKey生效 此處非常關(guān)鍵。 exEntity.updateProcessBusinessKey(key); } break; } default: break; } } @Override public boolean isFailOnException() { // TODO Auto-generated method stub return false; } }
2、配置監(jiān)聽:
<bean id="processEngineConfiguration" class="org.activiti.spring.SpringProcessEngineConfiguration"> <property name="dataSource" ref="dataSourceTech" /> <property name="jobExecutorActivate" value="true" /> <!-- 其間的配置見官方demo --> <property name="eventListeners"> <list> <!-- businessKey空值處理監(jiān)聽 --> <bean class="com.cdel.activiti.listener.BusinessKeyInjectionActivitiEventListener"/> </list> </property> </bean>
上述內(nèi)容就是activiti 5.16 businessKey如何為null處理。,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
當(dāng)前名稱:activiti5.16businessKey如何為null處理。
網(wǎng)頁鏈接:http://chinadenli.net/article30/ihddpo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)、網(wǎng)站排名、品牌網(wǎng)站制作、網(wǎng)站策劃、關(guān)鍵詞優(yōu)化、網(wǎng)站改版
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)