欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

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

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

開(kāi)通VIP
jBPM學(xué)習(六)----Hello World JBPM @net -JavaEye技術(shù)社區
六、開(kāi)發(fā)自己的工作流(Hello World)
1.         eclipse插件安裝
jbpm提供了在eclipse下的一個(gè)可視化插件,通過(guò)它我們可以方便的定義工作流,打開(kāi)jbpm-starters-kit-3.1.4jbpm-designer\jbpm-gpd-feature目錄,我們可以看到下面有一個(gè)eclipse文件夾,這里我們通過(guò)link的方式為eclipse添加該插件。
在{eclipse_home}/link文件夾下新建jbpm-designer.link文件,用記事本打開(kāi)該文件加入如下一行:
path=D:\\jbpm-starters-kit-3.1.4\\jbpm-designer\\jbpm-gpd-feature
后面的路徑即為該插件的存放路徑,根據個(gè)人情況修改。注意,這里的分隔符使用雙斜杠\\。
2.         新建jbpm項目
主菜單“文件->新建->項目”,在彈出的對話(huà)框里,有“ Process Project ”項,如下圖所示:
選上,單擊“下一步”,工程起名“myjbpm”,點(diǎn)擊下一步為此工程指定一個(gè)jbpm location,如果時(shí)第一次運行該插件,系統會(huì )提示你設置一個(gè)jbpm location。這里我們將location設置為D:\jbpm-starters-kit-3.1.4\jbpm.3。然后就可以單擊“完成”了。然后就生成了如下圖所示的一個(gè)項目結構:
這個(gè)項目和通常Eclipse的項目結構有點(diǎn)不同,不過(guò)這是一個(gè)現在非常流行的項目結構,src/main/java存放源文件,src/test/java存放相應的JUnit單元測試代碼,src/main/jpdl存放我們定義的工作流文件。
       項目創(chuàng )建起了,介紹一下里面的文件吧:
l         MessageActionHandler,自動(dòng)生成的一個(gè) ActionHandler。
l         hibernate.cfg.xml  jBPM是用Hibernate進(jìn)行工作流的數據存儲的,這個(gè)就是Hibernate 的配置文件。后面我們將講到如何配置這個(gè)文件。
l         jbpm.cfg.xml   jbpm本身的配置文件?,F在是空的,它用的是缺省配置,你想知道有哪些配置就去看這個(gè)文件
D:\jbpm-starters-kit- 3.1.4\jbpm.3\src\java.jbpm\org\jbpm\default.jbpm.cfg.xml
l         log4j.properties  這個(gè)是日志 API log4j 的配置文件,用過(guò) log4j 的都知道。
l         SimpleProcessTest.java  這個(gè)是對最重要的流程配置文件的processdefinition.xml單元測試代碼。
l         gpd.xml  用于生成流程圖的定義文件。都是一些方框的坐標和長(cháng)寬
l         processdefinition.xml  這個(gè)是對最重要的流程配置文件,以后寫(xiě)流程要經(jīng)常和它打交道。
l         processimage.jpg  一個(gè)流程圖
3.         簡(jiǎn)單工作流定義
展開(kāi)myjbpm工程,選中src/main/jpdl包,單擊鼠標右鍵,new->other,如下圖:
新建一個(gè)Process Definition,process命名為HelloWorld,單擊finish,結果如下圖:
右面的窗口為工作流定義的可視化窗口。選中該窗口單擊eclipse菜單欄view->show Grid為該窗口添加網(wǎng)格,方便后面開(kāi)發(fā)。
1)        定義基本流程
分別向編輯區拖入,start、task node、end節點(diǎn),用transition將他們依次連起來(lái),并分別修改task node名為show message,end節點(diǎn)名為end,兩個(gè)transition分別命名為sendok,得到如下所示結果:
2)        定義泳道(swimlane)
我們?yōu)樵摿鞒潭x一個(gè)名為user的泳道(swimlane),點(diǎn)擊編輯窗口左下角的swimlanes按鈕,得到添加泳道界面,單擊add按鈕,按照下圖配置相關(guān)信息,這樣我們就將用戶(hù)grover加入到了泳道user中:
3)        定義節點(diǎn)任務(wù)
打開(kāi)eclipse中的outline視圖,我們可以看到一個(gè)名為HelloWorldprocess節點(diǎn),展開(kāi)該節點(diǎn),如下圖:
右擊start節點(diǎn),選擇add task
我們看到start節點(diǎn)下多出了一個(gè)名為tasktask節點(diǎn):
雙擊該節點(diǎn),打開(kāi)節點(diǎn)編輯窗口,將該task改名為input message,如下:
選擇左邊的controller我們?yōu)樵摿鞒潭x一個(gè)名為message的變量,這個(gè)變量就是我們后面要傳遞的信息,照下圖配置該變量:
點(diǎn)擊ok,完成start節點(diǎn)下的任務(wù)定義。
       按照以上步驟,我們再為message show節點(diǎn)定義一個(gè)名為show message的任務(wù),這里的變量名也為message,但是屬性只有read,我們通過(guò)這個(gè)任務(wù)讀取前面所輸入的message信息。注意兩個(gè)任務(wù)的變量名要相對應,如下圖:
      
下來(lái)點(diǎn)擊assignment菜單,配置該任務(wù)的分配方式,如下圖所示,將該任務(wù)分配給名為userswimlane,此swimlane包含了grover用戶(hù)。結果如下圖:
單擊ok,我們就完成了該流程的任務(wù)定義。這里我們看到多出了兩個(gè)task,如圖:
 
4)        保存流程定義
單擊保存按鈕,我們保存該流程定義。保存成功后我們可以看到,在流程定義的包中多出了一個(gè)名為processimage.jpg的圖像文件,該文件為我們定義流程的流程圖,如下:
點(diǎn)擊編輯窗口下的source按鈕,我們可以查看通過(guò)圖形編輯界面自動(dòng)生成的該流程的xml定義,即processdefinition.xml中的內容。如下:
xml 代碼
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <process-definition  
  3.  xmlns="urn:jbpm.org:jpdl-3.1" name="HelloWorld">  
  4.    <swimlane name="user">  
  5.       <assignment expression="user(grover)"></assignment>  
  6.    </swimlane>  
  7.    <start-state name="start">  
  8.       <task name="input message">  
  9.          <controller>  
  10.             <variable name="message" access="read,write,required"></variable>  
  11.          </controller>  
  12.       </task>  
  13.       <transition name="send" to="message show"></transition>  
  14.    </start-state>  
  15.    <task-node name="message show">  
  16.       <task name="show message" swimlane="user">  
  17.          <controller>  
  18.             <variable name="message" access="read"></variable>  
  19.          </controller>  
  20.       </task>  
  21.       <transition name="OK" to="end"></transition>  
  22.    </task-node>  
  23.    <end-state name="end"></end-state>  
  24. </process-definition>  
對照剛才的流程定義,我們很容易可以看出各個(gè)xml標簽所對應的意義。具體細節我們將在后面介紹。
5)        部署流程定義
首先我們要啟動(dòng)jboss服務(wù),待服務(wù)啟動(dòng)成功后單擊編輯窗口下的deployment按鈕,按照下圖配相應參數,然后點(diǎn)擊test connection,如果彈出成功窗口,說(shuō)明服務(wù)器連接正常,否則請檢查你的參數設置。
測試連接成功后,我們點(diǎn)擊下面的deploy process archive按鈕,如果得到成功信息,恭喜你,說(shuō)明我們定義的工作流已經(jīng)成功的部署到了jboss上,如下圖:
6)        使用工作流
打開(kāi)IE瀏覽器,在地址欄中輸入http://localhost:8080/jbpm,以cookie monster身份登陸系統。我們看到Start New Process Execution里面多了一項Hello World,這就是我們剛才部署過(guò)的工作流。
 
點(diǎn)擊input message我們會(huì )看到以下畫(huà)面:
 
注意到左面有個(gè)一名為message的文本框,這個(gè)文本框就是我們在流程定義里定義的變量message。右面是本流程的流程圖,紅色的框代表該流程現在運行到哪一步。我們在文本框內輸入Hello!Congratulations!。然后點(diǎn)擊save and close task按鈕,提交該內容。之后頁(yè)面跳轉,我們會(huì )在上面看到這樣一行提示信息:A new task has been assigned to ‘grover’。說(shuō)明第一步流程已完成,將下一步任務(wù)委派給泳道user中的grover。我們點(diǎn)擊屏幕左上角的login as another user。如圖所示:
grover身份登陸系統,我們可以看到在grover的主界面下的tasklist里多出了一項:
 
單擊該任務(wù),我們可以看到同樣有一個(gè)名為message的文本框,但是他的內容是不可編輯的,這和我們定義工作流變量時(shí)的設置有關(guān),并且里面的內容正是上一步中cookie monster用戶(hù)所輸入的內容。我們還可以注意到,右面流程圖中標明該流程已經(jīng)進(jìn)入第二步。
繼續點(diǎn)擊save and close task按鈕,頁(yè)面跳轉,得到信息:The process has finished。并且tasklist中剛才的任務(wù)項也不存在了。至此,整個(gè)工作流程執行完畢。
7)        工作流管理
Jbpm為我們提供了簡(jiǎn)單的工作流管理,單擊左面菜單欄的monitoring進(jìn)入monitoring界面,點(diǎn)擊鏈接Process Definitions list,如下:
得到如下界面,這里我們可以看到目前為止所有的工作流定義以及他們所擁有的實(shí)例數。通過(guò)該圖可以得知Hello World目前只有一個(gè)實(shí)例,即我們剛才執行過(guò)的那個(gè)實(shí)例。
我們點(diǎn)擊實(shí)例數1,得到Hello World下所有的實(shí)例列表,如下圖:
我們只初始化過(guò)一個(gè)實(shí)例,因此這里只有一項,startend分別表示該實(shí)例開(kāi)始和結束的時(shí)間,我們點(diǎn)擊前面的Id號,查看該實(shí)例的詳細信息:
其中,task列表列出了該實(shí)例所有的task,其中name表示task的名字,actorId表示由誰(shuí)執行該task,date表示該task結束的時(shí)間。Variables列表列出了該task中所有的變量及其值。我們在流程定義里只定義了一項變量,因此這里只有message,它的值即為剛才輸入的內容。我們還可以通過(guò)update按鈕向列表中添加修改變量。
下面的圖,即為該流程的流程圖。紅色的框標明此實(shí)例已經(jīng)結束。
       至此,一個(gè)簡(jiǎn)單的工作流就完成了,相信大家從中可以大致的了解jbpm定義工組流的基本過(guò)程,在后面的章節我們將進(jìn)一步介紹更多的內容。
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
Jbpm用戶(hù)指南翻譯:第11章 任務(wù)管理
jbpm簡(jiǎn)介
jbpm 4.4 表結構
JBPM4.3總結四
JBPM 2 (Hello World) - 閑人茶館 - JavaEye技術(shù)網(wǎng)站
簡(jiǎn)單介紹jBPM與SSH的完整實(shí)例
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久