JBPM安装及请假流程实例Word文档下载推荐.docx
《JBPM安装及请假流程实例Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《JBPM安装及请假流程实例Word文档下载推荐.docx(27页珍藏版)》请在冰豆网上搜索。
3)点击新建(New)
4)类型名字jBPMLibraries
5)点击添加JARs(AddJARs...)
6)找到jBPM安装程序下的lib目录
7)选择lib下的所有jar文件并点击打开(Open)
8)选择jBPMLibraries作为入口
9)重新点击添加JARs(AddJARs)
10)在jBPM的安装程序的根目录下选择文件
11)点击打开(Open)
12)在下选择源码附件(Sourceattachment)作为入口
13)点击编辑(Edit)
14)在源码附件的配置(SourceAttachmentConfiguration)对话框中,点击目录(ExternalFolder...)
15)找到jBPM安装程序下的src目录
16)点击选择(Choose)
17)点击两次'
确定'
(Ok)会关闭所有对话框
在目录中添加jPDL4模式
如果你想直接编辑XML源码,最好是在你的XML目录中指定一下模式(schema),这样当你在编辑流程源码的时候,可以更好的帮助你编写代码。
2)选择XML-->
目录(XML-->
CataLog)
3)点击添加(Add)
4)添加XML目录(AddXMLCatalogEntry)的窗口打开
5)点击map-icon的图标下面的按钮并选择文件系统(FileSystem)
6)在打开的对话框中,选择jBPM安装目录下src文件夹中文件
7)点击打开(Open)并且关闭所有的对话框
2、实例教程讲解
这节我们将使用建立一个简单请假流程项目
建立项目
在eclipse中新建一个DynamicWebProject的项目jbpm4leave。
加入jbpm用户库
1)邮件点击新建的项目jbpm4leave—>
Properties
2)如下图说示加入用户库
加入jbpm所需要的配置文件
大家可以从解压后的文件下,在路径\examples\src中找到以下文件,加入到项目工程的src中
其中是配置的hibernate配置文件,包括数据源的配置,和一般的配置文件差不多。
开头的文件,是用于邮件功能的配置。
新建简单的请假流程
1)新建一个的流程定义文件
右键点击srcNewOther,选择JBossjBPM下的Jbpm4ProcessDefinition,文件名写leave,版本号写即可。
3)用流程设计器打开新建的。
右键点击WithjBPMjPDL4Editor,,看见如下效果
3)设计请假流程
在这个简单的请假流程中,包含开始(start)、结束(end)、任务(task)、决策(decision)四种流程元素。
流程设计如下:
4)详细设计流程中的各任务节点的流转条件
选中“申请”任务节点,在properties(属性)中,General标签的Name(属性值)填为“申请”,Assignment标签的Type选择assignee(参与者,选择这个,可以指定该任务节点的直接参与者),Expression的属性值填为#{owner}(即指定这个任务节点的直接参与者就是这个流程的启动者)。
选中“经理审批”任务节点,在properties(属性)中,General标签的Name(属性值)填为“经理审批”,Assignment标签的Type选择candidate-groups(参与者,选择这个,可以该任务节点有某个用户组来参与),Expression的属性值填为manager(即指定这个任务节点的有manager这个用户组来完成)。
“老板审批”节点同“经理审批”任务节点设置类似,只是Expression改为boss
设置决策节点,选中
,在属性标签General中按如下所示填写:
Name(节点名称),Expression(判断表达式,其中day是在流程流转过程中的一个记录天数的属性,整个表达式的意思是天数大于3天需要老板审批,如果天数不大于3天,经理审批通过后就直接结束流程,不需要老板审批)。
设计好流程后,点击保存,IDE将自动为你生成一个png的流程图片,切记不可在xml源码界面进行保存,否则会生成不完整的流程图片。
在点击下方的“Source”属性,即可看到流程定义文件的xml源码
一下是的源码:
<
xmlversion="
"
encoding="
UTF-8"
>
processname="
leave"
xmlns="
jpdl"
<
startg="
198,15,48,48"
name="
start1"
<
transitionto="
申请"
/>
/start>
taskassignee="
#{owner}"
form="
g="
175,94,92,52"
经理审批"
/task>
taskcandidate-groups="
manager"
176,174,92,52"
transitiong="
-32,-8"
批准"
to="
exclusive1"
120,199;
121,122:
-42,-18"
驳回"
decisionexpr="
#{day>
3'
老板审批'
:
'
结束'
}"
196,259,48,48"
-39,-10"
结束"
end1"
344,283:
-71,-17"
老板审批"
/decision>
boss"
299,305,92,52"
342,378:
endg="
196,354,48,48"
/process>
至此工程的src文件下就有下面这些文件:
发布流程
Jbpm的流程发布其实很简单,只要使用jbpm已经封装好的方法进行使用,即可。
我们新建一个的页面用户发布流程。
在此讲解使用zip文件打包发布流程。
1)将之前建立好的和文件,一起打包进文件。
2)代码如下:
%@pagelanguage="
java"
contentType="
text/html;
charset=gb2312"
%>
%@page
import="
!
DOCTYPEhtmlPUBLIC"
-etRepositoryService();
try{
Stringfile=deployFile;
ddResourcesFromZipInputStream(zis).deploy();
();
("
发布流程成功<
br/>
);
ahref='
'
返回<
/a>
}catch(Exceptione){
发布流程失败"
}
}
scripttype="
text/javascript"
functionreadFile(obj){
("
file"
).value=;
/script>
fontcolor="
red"
可直接发布zip文件<
/font>
formname="
form1"
method="
post"
action="
label>
发布流程文件<
inputtype="
processDef"
onchange="
readFile(this)"
/label>
submit"
Submit"
value="
提交"
/form>
/body>
/html>
3)测试发布成功结果
4)查看已发布成功的流程
已经有的一个查看流程的页面,源码如下:
charset=GB18030"
pageEncoding="
GB18030"
%@includefile="
/"
reateProcessDefinitionQuery().list();
html>
head>
metahttp-equiv="
Content-Type"
content="
title>
Inserttitlehere<
/title>
styletype="
text/css"
body{
font:
normal11pxauto"
TrebuchetMS"
Verdana,Arial,Helvetica,
sans-serif;
color:
#4f6b72;
background:
#E6EAE9;
}
a{
#c75f3e;
#mytable{
padding:
0;
margin:
caption{
005px0;
width:
700px;
italic11px"
Verdana,Arial,Helvetica,sans-serif;
text-align:
right;
th{
fo