簡單介紹jBPM與SSH的完整實(shí)例
簡單介紹jBPM與SSH的完整實(shí)例,如果是其它版本的框架也很容易做程序的遷移。
流程的定義
流程的定義建議使用jBPM提供的eclipse下的插件,圖形化配置插件安裝文件可以到j(luò)bpm-starters-kit-3.1.4\jbpm-designer\jbpm-gpd-feature\eclipse下找到,需注意版本。使用這種方式可以把定義的流程描述的三個文件壓縮成zip包,統(tǒng)一的部署到數(shù)據(jù)庫中,方便b/s系統(tǒng)中顯示圖片當(dāng)前節(jié)點(diǎn)信息。
1插件安裝
把jbpm-gpd-feature文件夾復(fù)制到C:\Program Files\MyEclipse-6.0M1\eclipse\plugins下,注意自己的ecplise路徑。
在C:\Program Files\MyEclipse-6.0M1\eclipse\links文件夾下建立jbpm-gpd.link文件。內(nèi)容如下:path=C:\\Program Files\\MyEclipse-6.0M1\\eclipse\\plugins\\jbpm-gpd-feature。
這樣再重新啟動eclipse就可以使用流程定義功能了。
2流程的定義
在Eclipse環(huán)境中選擇file->new->other下的jboss jbpm->process definition流程定義。要在自己的項(xiàng)目文件中先指定文件要創(chuàng)建的文件夾。
這樣會產(chǎn)生三個文件:gpd.xml、processdefinition.xml、processimage.jpg。
processdefinition.xml為描述流程定義文件,本例為:
- <?xml version="1.0" encoding="UTF-8"?>
- <process-definition name="文檔測試流程">
- <start-state name="開始"> <transition name="提交張三審批" to="張三審批"></transition>
- </start-state>
- <task-node name="張三審批">
- <task name="審批1">
- <assignment actor-id="張三"/>
- </task>
- <transition name="提交李四審批" to="李四審批"></transition>
- </task-node>
- <task-node name="李四審批">
- <task name="審批2">
- <assignment actor-id="李四"/>
- </task>
- <transition name="提交王五審批" to="王五審批"></transition>
- </task-node>
- <task-node name="王五審批">
- <task name="審批3">
- <assignment actor-id="王五"/>
- </task>
- <transition name="結(jié)束流程" to="結(jié)束"></transition>
- </task-node>
- <end-state name="結(jié)束"></end-state>
- </process-definition>
processimage.jpg文件是定義流程產(chǎn)生的圖片、gpd.xml文件是圖形文件的座標(biāo)說明。用于在b/s下顯示流程流轉(zhuǎn)的圖片位置。
本例中的gpd.xml文件
- <?xml version="1.0" encoding="UTF-8"?>
- <process-diagram name="文檔測試流程" width="801" height="477">
- <node name="開始" x="308" y="4" width="140" height="40">
- <transition name="提交張三審批">
- <label x="5" y="-10"/>
- </transition>
- </node>
- <node name="張三審批" x="310" y="90" width="140" height="40">
- <transition name="提交李四審批">
- <label x="5" y="-10"/>
- </transition>
- </node>
- <node name="李四審批" x="313" y="192" width="140" height="40">
- <transition name="提交王五審批">
- <label x="5" y="-10"/>
- </transition>
- </node>
- <node name="王五審批" x="308" y="307" width="140" height="40">
- <transition name="結(jié)束流程">
- <label x="5" y="-10"/>
- </transition>
- </node>
- <node name="結(jié)束" x="307" y="401" width="140" height="40"/>
- </process-diagram>
【編輯推薦】