Activiti 开发主意事项
Activiti 5.9
?
runtimeService.signalEventReceived(String signalName)
这里的signalName就是流程定义里的name(not id)
?
<signal id="alertSignal" name="alert" />?
跟rule(Drools DRL)结合部署时, 需要将rule和流程定义文件一起打成一个BAR(zip包也可以)
Note 部署时, 如果流程文件的扩展名是.bpmn(用eclipse designer默认创建的流程文件就是.bpmn), 需要为deployment的name指定一个.bpmn20.xml的名称, 负责activiti无法识别到你的流程定义
?
Deployment deployment = repositoryService.createDeployment().name("BusMonitorProcess.bpmn20.xml").addZipInputStream(zis).deploy();?另一种直接的方式就是在BAR包里的.bpmn文件直接改一下扩展名为 .bpmn20.xml
?
?
?
我传递到后台的String vacationApproved = request.getParameter("vacationApproved");
vacationApproved 是字符串 “true”,
可是流程文件中审批请假的这个用户任务后的这个分支节点的输入条件要求的表达式是
${vacationApproved}
流程文件片段如下
<sequenceFlow id="flow3" sourceRef="requestApprovedDecision" targetRef="sendApprovalMail">
<conditionExpression xsi:type="tFormalExpression">${vacationApproved}</conditionExpression>
</sequenceFlow>
看意思是要求vacationApproved是布尔类型的,可这个变量
是请假审批人提交表单的一个数据,这个数据只能是字符串型的,因为
formService 这个服务类提交用户任务表单的方法是
void submitTaskFormData(String taskId, Map<String, String>
properties);
只能传递字符串。
现在的问题就是我传递字符串过去后台报错说 返回值是字符串“true”,不是boolean 类型的,可是我也不能直接传递一个boolean 类型的过去呀,因为api 不允许。
怎么办?
请教了!
<conditionExpression xsi:type="tFormalExpression">${vacationApproved == 'true'}</conditionExpression>
</sequenceFlow>
我不确定可不可以这样比, 但是这个思路应该可以.
我传递到后台的
String vacationApproved = request.getParameter("vacationApproved");
vacationApproved 是字符串 “true”,
可是流程文件中审批请假的这个用户任务后的这个分支节点的输入条件要求的表达式是
${vacationApproved}
流程文件片段如下
<sequenceFlow id="flow3" sourceRef="requestApprovedDecision" targetRef="sendApprovalMail">
<conditionExpression xsi:type="tFormalExpression">${vacationApproved}</conditionExpression>
</sequenceFlow>
看意思是要求vacationApproved是布尔类型的,可这个变量
是请假审批人提交表单的一个数据,这个数据只能是字符串型的,因为
formService 这个服务类提交用户任务表单的方法是
void submitTaskFormData(String taskId, Map<String, String>
properties);
只能传递字符串。
现在的问题就是我传递字符串过去后台报错说 返回值是字符串“true”,不是boolean 类型的,可是我也不能直接传递一个boolean 类型的过去呀,因为api 不允许。
怎么办?
请教了!