`

jbpm4

阅读更多

jbpm4,执行张三任务时正确执行,但执行“李四”任务时提示“从数据类型 nvarchar 转换为 numeric 时出错”,我的流程代码如下:

<?xml version="1.0" encoding="UTF-8"?>

<process name="leave" xmlns="http://jbpm.org/4.4/jpdl">
   <start g="283,26,48,48" name="start1">
      <transition name="to shenqin" to="shenqin" g="-65,-17"/>
   </start>
   <task assignee="张三" g="260,110,92,52" name="shenqin">
      <transition name="to shenpi" to="shenpi" g="-59,-17"/>
   </task>
   <task assignee="李四" g="261,202,92,52" name="shenpi">
      <transition g="-47,-17" name="to end1" to="end1"/>
   </task>
   <end g="285,286,48,48" name="end1"/>
</process>

 

执行语句如下:package com.hzkj.work;

import java.util.List;

import org.jbpm.api.ExecutionService;
import org.jbpm.api.ProcessEngine;
import org.jbpm.api.ProcessInstance;
import org.jbpm.api.TaskService;
import org.jbpm.api.task.Task;

import com.hzkj.utils.JdbcProUtils;

public class test2 {
 static ProcessEngine processEngine = JdbcProUtils.getProcessEngine();

 /**
  * @param args
  */
 public static void main(String[] args) {
  //createInstance();
  compInstance();
  
 }

 static void createInstance() {
  ExecutionService executionService = processEngine.getExecutionService();
  ProcessInstance pi = executionService
    .startProcessInstanceByKey("leave");
  System.out.println(pi.getName());
 }

 static void compInstance() {
  TaskService taskService = processEngine.getTaskService();
  // taskService.completeTask("50002");
  List<Task> list = taskService.findPersonalTasks("张三");//把张三换成李四就出错了。
  for (Task task : list) {
   String id = task.getId();
   taskService.completeTask(id);
  }
  
 }
}
请大虾们帮忙看一下。

 

 

感谢分析,我终于找到了错误的原因。我采用了JBPM4.4的包,我换成了JBPM4.3包后,就解决了此问题,希望大家在用JBPM4的时候采用4。3的包

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics