国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
activiti學(xué)習(xí)筆記1

Activiti是一款非常優(yōu)秀的工作流引擎,主要作者是曾經(jīng)開(kāi)發(fā)JBPM的作者,因?yàn)镴BPM存在很?chē)?yán)重的版本不兼容的問(wèn)題,所以有些項(xiàng)目已經(jīng)開(kāi)始轉(zhuǎn)向用Activiti來(lái)開(kāi)發(fā)了,我最近也在學(xué)習(xí)Activiti。Activiti目前最新的版本是5.9,本次學(xué)習(xí)的也是這一個(gè)版本,下載地址為:http://activiti.org/download.html。學(xué)習(xí)的主要方式就是查看官方文檔,將下載好的 activiti-5.9.zip解壓并進(jìn)入docs/userguide/index.html然后開(kāi)始查看該官方文檔。

下面是我翻譯的官方文檔的目錄:

 

Activiti 5.9用戶指南

目錄

1. 介紹

許可證

下載

源碼

所需軟件

JDK 5+

Ant 1.8.1+

Eclipse 3.6.2

報(bào)告問(wèn)題

實(shí)驗(yàn)性功能

內(nèi)部實(shí)現(xiàn)類

2. 入門(mén)

一分鐘版本

Demo安裝

工作區(qū)中的示例工程

依賴庫(kù)

Eclipse安裝

檢查數(shù)據(jù)庫(kù)

數(shù)據(jù)庫(kù)表名解釋

3. 配置

創(chuàng)建一個(gè)ProcessEngine(流程引擎)

ProcessEngineConfiguration(流程引擎配置) bean

數(shù)據(jù)庫(kù)配置

作業(yè)執(zhí)行者激活

郵件服務(wù)器配置

歷史配置

暴露在表達(dá)式和腳本中的配置Bean

支持的數(shù)據(jù)庫(kù)

創(chuàng)建數(shù)據(jù)庫(kù)表

數(shù)據(jù)庫(kù)升級(jí)

4. Spring集成

ProcessEngineFactoryBean(流程引擎工廠Bean)

Transactions(事務(wù))

表達(dá)式

自動(dòng)資源調(diào)配

單元測(cè)試

5. API

引擎API

例外策略

單元測(cè)試

調(diào)試單元測(cè)試

在Web應(yīng)用程序的流程引擎

流程虛擬機(jī)的API

表達(dá)式

6. 部署

業(yè)務(wù)檔案

編程方式的部署

采用ant部署

使用Activiti Explorer部署

外部資源

Java類

從過(guò)程中使用的spring beans

創(chuàng)建一個(gè)單一的應(yīng)用程序

流程定義的版本

提供流程圖

生成流程圖

7. BPMN 20 簡(jiǎn)介

什么是BPMN?

舉例

定義一個(gè)流程

入門(mén):十分鐘教程

準(zhǔn)備

目標(biāo)

用例

流程圖

XML表示方式

啟動(dòng)一個(gè)流程實(shí)例

任務(wù)列表

聲明任務(wù)

完成任務(wù)

結(jié)束流程

代碼概述

未來(lái)的增強(qiáng)

8. BPMN 20 構(gòu)造

自定義擴(kuò)展

事件

事件定義

計(jì)時(shí)器事件定義

錯(cuò)誤事件定義

信號(hào)事件定義

消息事件定義

啟動(dòng)事件

無(wú)啟動(dòng)事件

定時(shí)器啟動(dòng)事件

消息啟動(dòng)事件

錯(cuò)誤啟動(dòng)事件

結(jié)束事件

無(wú)結(jié)束事件

錯(cuò)誤結(jié)束事件

取消結(jié)束事件

邊界事件

定時(shí)器邊界事件

錯(cuò)誤邊界事件

信號(hào)邊界事件

取消邊界事件

補(bǔ)償邊界事件

中間醒目事件

定時(shí)器中間醒目事件

信號(hào)中間醒目事件

中間拋出事件

中間無(wú)拋出事件

信號(hào)中間拋出事件

補(bǔ)償中間拋出事件

順序流

描述

圖形符號(hào)

XML表示

有條件的順序流

默認(rèn)順序流

網(wǎng)關(guān)

獨(dú)有網(wǎng)關(guān)

并行網(wǎng)關(guān)

包容網(wǎng)管

事件網(wǎng)關(guān)

任務(wù)

用戶任務(wù)

腳本任務(wù)

Java Service任務(wù)

WebService任務(wù)

業(yè)務(wù)規(guī)則任務(wù)

電子郵件任務(wù)

頑固(原:Mule)任務(wù)

人工任務(wù)

Java接受任務(wù)

外殼(原:Shell)任務(wù)

執(zhí)行監(jiān)聽(tīng)器

任務(wù)監(jiān)聽(tīng)器

多實(shí)例(每個(gè))

補(bǔ)償處理程序

子流程和呼叫活動(dòng)(原:Callactivities)

子流程

事件子流程

事務(wù)子流程

呼叫活動(dòng) (子流程)

事務(wù)個(gè)并發(fā)

異步連續(xù)

獨(dú)有作業(yè)

9. 表單

表單屬性

外形呈現(xiàn)

10. JPA(Java持久化API)

要求

配置

用法

簡(jiǎn)單示例

查詢 JPA 流程變量

使用Spring Bean和JPA的高級(jí)示例

11. 歷史

查詢歷史

HistoricProcessInstanceQuery(歷史流程實(shí)例查詢)

HistoricActivityInstanceQuery(歷史活動(dòng)實(shí)例查詢)

HistoricDetailQuery(歷史細(xì)節(jié)查詢)

HistoricTaskInstanceQuery(歷史任務(wù)實(shí)例查詢)

歷史配置

歷史的審計(jì)目的

12. Eclipse設(shè)計(jì)器

安裝

Activiti Designer編輯的功能

Activiti Designer BPMN 功能

Activiti Designer 部署功能

擴(kuò)展的Activiti Designer

自定義調(diào)色板

驗(yàn)證圖表和導(dǎo)出自定義輸出格式

13. Activiti Explorer

案例概述

案例

啟動(dòng)流程實(shí)例

我的實(shí)例

管理

更改數(shù)據(jù)庫(kù)

14. Activiti附加組件

周期

基于Signavio核心組件的Activiti Modeler

15. REST API

知識(shí)庫(kù)

上傳部署

獲取部署

獲取部署資源

獲取一個(gè)部署資源

刪除一個(gè)部署

刪除部署

引擎

獲取流程引擎

流程

列舉流程定義

獲取表單屬性流程定義

獲取表單資源中流程定義

啟動(dòng)流程實(shí)例

列舉流程實(shí)例

獲取流程實(shí)例詳細(xì)信息

獲取流程實(shí)例圖

任務(wù)

獲取任務(wù)摘要

任務(wù)列表

獲取任務(wù)

獲取任務(wù)表單

執(zhí)行任務(wù)操作

表單屬性列表

給任務(wù)添加附件

給任務(wù)增加URL

身份

登錄

獲取用戶

列舉用戶的組

獲取組

列舉組用戶

管理

工作列表

獲得工作

執(zhí)行一個(gè)工作

執(zhí)行多個(gè)工作

獲取數(shù)據(jù)庫(kù)中的表

獲取表的元數(shù)據(jù)

獲得表中的數(shù)據(jù)

16. CDI(上下文和依賴注入[Contexts and Dependency Injection for Java EE])整合

設(shè)定activiti-cdi

找到一個(gè)流程引擎

配置流程引擎

部署流程

結(jié)合CDI的上下文流程執(zhí)行

與流程實(shí)例相關(guān)聯(lián)的會(huì)話

聲明式的流程控制

參考流程的Beans

使用 @BusinessProcessScoped beans工作

注入流程變量

接收流程事件

附加功能

已知的缺陷

目錄表

2.1. 演示用戶

2.2. webapp工具

3.1. 支持的數(shù)據(jù)庫(kù)

6.1.

6.2.

8.1. 郵件服務(wù)器配置

8.2. 郵件服務(wù)器配置

8.3. 電驢服務(wù)器配置

8.4. 外殼任務(wù)參數(shù)配置

 

根據(jù)該目錄進(jìn)行查看官方文檔感覺(jué)就好很多了,接下來(lái)就是正式的學(xué)習(xí)。

1.介紹

該部分基本上沒(méi)有太多的關(guān)注點(diǎn),主要講述的是Activiti遵守的是Apache V2的協(xié)議,下載地址為http://activiti.org/download.html,大部分的源碼都放在了所下載的發(fā)布包中,其余的完整源碼需要到https://svn.codehaus.org/activiti尋找,運(yùn)行所需的JDK版本是1.5或者更高,ant構(gòu)建的版本是1.8.1+,Eclipse為3.6.2,還有其他的一些介紹。

 

2.入門(mén)

該部分主要介紹的是發(fā)布包中自帶的demo的使用部署,以及相關(guān)的配置解釋,然后就是eclipse插件的安裝,官方文檔中介紹的都很詳細(xì),這里就不贅述了。

 

3.配置

這一部分的內(nèi)容比較瑣碎和復(fù)雜,為了能夠祈禱更好的學(xué)習(xí)效果,接下來(lái)講述一個(gè)簡(jiǎn)單的應(yīng)用Activiti的項(xiàng)目,以求快速入門(mén)。

分享到:
評(píng)論
1 樓 dashamo 2012-06-04   引用
你好,請(qǐng)教你一個(gè)問(wèn)題,我是剛學(xué)activiti的
activiti下載包里有一個(gè)工程activiti-engine-examples
我拿 VacationRequest.bpmn20.xml 這個(gè)請(qǐng)假流程作為一個(gè)學(xué)習(xí)例子。假期申請(qǐng)人A提交一個(gè)開(kāi)始節(jié)點(diǎn)的表單(request.form)時(shí)沒(méi)有問(wèn)題,這時(shí)啟動(dòng)一個(gè)流程實(shí)例,并給相關(guān)人員B生成一個(gè)代理任務(wù),這也沒(méi)問(wèn)題,但當(dāng)相應(yīng)人員B處理該代理任務(wù)也就是處理A的請(qǐng)假請(qǐng)求時(shí),他提交他的任務(wù)表單approve.form  ,后臺(tái)代碼如下

String taskId = request.getParameter("taskId");
String vacationApproved = request.getParameter("vacationApproved");
String managerMotivation = request.getParameter("managerMotivation");

Map<String, String> formProperties = new HashMap<String, String>();
formProperties.put("vacationApproved_type", vacationApproved_type);
formProperties.put("vacationApproved", vacationApproved);
formProperties.put("managerMotivation", managerMotivation);
formService.submitTaskFormData(taskId, formProperties);

這時(shí)最后一句話 formService.submitTaskFormData(taskId, formProperties);報(bào)錯(cuò)誤,錯(cuò)誤如下:
嚴(yán)重: Error while closing command context
org.activiti.engine.ActivitiException: condition expression returns non-Boolean: true (java.lang.String)
at org.activiti.engine.impl.el.UelExpressionCondition.evaluate(UelExpressionCondition.java:43)
at org.activiti.engine.impl.bpmn.behavior.ExclusiveGatewayActivityBehavior.leave(ExclusiveGatewayActivityBehavior.java:63)
at org.activiti.engine.impl.bpmn.behavior.FlowNodeActivityBehavior.execute(FlowNodeActivityBehavior.java:36)
at org.activiti.engine.impl.pvm.runtime.AtomicOperationActivityExecute.execute(AtomicOperationActivityExecute.java:44)
at org.activiti.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:76)
at org.activiti.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:497)

意思是表達(dá)式返回的不是布爾值,確實(shí)不是布爾值,
在 approve.form 中vacationApproved確實(shí)要求是boolean類型的
  <select name="vacationApproved">
    <option value="true">Yes</option>
    <option value="false">No</option>
   </select>
   <input type="hidden" name="vacationApproved_type" value="Boolean" />
我傳遞到后臺(tái)的
String vacationApproved = request.getParameter("vacationApproved");
vacationApproved 是字符串 “true”,
可是流程文件中審批請(qǐng)假的這個(gè)用戶任務(wù)后的這個(gè)分支節(jié)點(diǎn)的輸入條件要求的表達(dá)式是
${vacationApproved}
流程文件片段如下
    <sequenceFlow id="flow3" sourceRef="requestApprovedDecision" targetRef="sendApprovalMail">
      <conditionExpression xsi:type="tFormalExpression">${vacationApproved}</conditionExpression>
    </sequenceFlow>

看意思是要求vacationApproved是布爾類型的,可這個(gè)變量
是請(qǐng)假審批人提交表單的一個(gè)數(shù)據(jù),這個(gè)數(shù)據(jù)只能是字符串型的,因?yàn)?
formService 這個(gè)服務(wù)類提交用戶任務(wù)表單的方法是
void submitTaskFormData(String taskId, Map<String, String>
properties);

只能傳遞字符串。


現(xiàn)在的問(wèn)題就是我傳遞字符串過(guò)去后臺(tái)報(bào)錯(cuò)說(shuō) 返回值是字符串“true”,不是boolean 類型的,可是我也不能直接傳遞一個(gè)boolean 類型的過(guò)去呀,因?yàn)閍pi 不允許。
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
activiti入門(mén)一(簡(jiǎn)單介紹)
從零開(kāi)始學(xué)習(xí)和改造activiti流程引擎的13天,自己記錄一下
activiti工作流
activiti實(shí)現(xiàn)工作流審批
activiti 獲取當(dāng)前任務(wù)流程圖片的輸入流
Activiti最全入門(mén)教程
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服