jbpm4.4 task实体属性扩展
研究jbpm4.4也比较久了,但由于学习得比较分散,也没过太过深入,今天突然想jbpm4.4的最简单的扩展---实体属性扩展,google一下,资料太少了,大多都是api方面的问题
本着前人挖井,后人喝水的原则,前面喝了太多水,今天是时候挖口井了
下面用最简单的例子说明实体属性扩展的大概:
在流程定义文件里增加一个属性,然后解释,接着创建任务的时候把这个属性set进去
<task form="open.jsp" g="395,103,92,52" name="省市场部" role_id="195"> <assignment-handler name="同意" to="省客服服务部"/></task>
<attribute name="swimlane" type="string" /><!-- 自定义--><attribute name="role_id" type="string" /><attribute name="form" type="string">
public TaskDefinitionImpl parseTaskDefinition(Element element, Parse parse, ScopeElementImpl scopeElement) { //.... 这里看其他怎么写就怎么写 换个属性名而已 String role_id = XmlUtil.attribute(element, "role_id"); taskDefinition.setRoleId(role_id); //....}
public void execute(ExecutionImpl execution) { DbSession dbSession = EnvironmentImpl.getFromCurrent(DbSession.class); TaskImpl task = dbSession.createTask(); task.setTaskDefinition(taskDefinition); task.setExecution(execution); task.setProcessInstance(execution.getProcessInstance()); task.setSignalling(true); ........ //找个地方写就行 task.setRoleId(taskDefinition.getRoleId());}
<property name="roleId" column="ROLE_ID"/>