Jboss PermissionDeniedException:用户';[UserImpl:';admin';]';无法执行操作';启动';由于没有';当前状态';火柴

Jboss PermissionDeniedException:用户';[UserImpl:';admin';]';无法执行操作';启动';由于没有';当前状态';火柴,jboss,jbpm,bpmn,Jboss,Jbpm,Bpmn,我正在开发jBPM6和jboss6.2,并尝试创建一个不同级别的应用程序,如员工、领导和主管。领导和主管是团队。创建流程后,我就像一名员工发送了一个请求,并将流程移动到了Lead,他已经批准了该请求,并将流程移动到了Director,一旦他试图批准该请求,就会抛出以下错误 [org.jbpm.services.task.persistence.TaskTransactionInterceptor] (http-localhost/127.0.0.1:8080-5) Could not commi

我正在开发jBPM6和jboss6.2,并尝试创建一个不同级别的应用程序,如员工、领导和主管。领导和主管是团队。创建流程后,我就像一名员工发送了一个请求,并将流程移动到了Lead,他已经批准了该请求,并将流程移动到了Director,一旦他试图批准该请求,就会抛出以下错误

[org.jbpm.services.task.persistence.TaskTransactionInterceptor] (http-localhost/127.0.0.1:8080-5) Could not commit session: org.jbpm.services.task.exception.PermissionDeniedException: User '[UserImpl:'admin']' was unable to execution operation 'Start' on task id 1 due to a no 'current status' match
at org.jbpm.services.task.internals.lifecycle.MVELLifeCycleManager.evalCommand(MVELLifeCycleManager.java:128) [jbpm-human-task-core-6.0.1.Final.jar:6.0.1.Final]
at org.jbpm.services.task.internals.lifecycle.MVELLifeCycleManager.taskOperation(MVELLifeCycleManager.java:318) [jbpm-human-task-core-6.0.1.Final.jar:6.0.1.Final]
at org.jbpm.services.task.identity.UserGroupLifeCycleManagerDecorator.taskOperation(UserGroupLifeCycleManagerDecorator.java:46) [jbpm-human-task-core-6.0.1.Final.jar:6.0.1.Final]  
执行以下代码时:

    TaskService taskService = runtimeEngine.getTaskService();
    taskService.start(taskId, username);
    taskService.complete(taskId, username, parameterMap);
我不熟悉BPM流程流,但已尽力解决该问题。但没有找到解决办法。请告诉我怎么解决?哪里出了问题,如配置或其他问题?
谢谢,

Chowdary先生

不要使用“管理员”用户,请使用属于Director组的任何其他用户

不要使用“管理员”用户,请使用属于Director组的任何其他用户

经过大量的努力,调试代码后,我知道在
操作中,
jbpm-human-task-core-6.0.1.Final.jar中的dsl.mvel
文件具有
启动、完成、失败、退出等操作。
因为当前状态未定义。这是由于在完成任务时出现了一些错误而导致的。例如:

taskService.start(taskId, username);   
在此步骤之前,状态为“就绪”
执行此步骤后,状态将为“InProgress”

执行
complete()
时,如果出现异常,则状态将仅为
“InProgress”

因此,如果用户试图完成任务,它将从
start()
方法开始,在该方法状态下
未定义“InProgress”
。因此,它抛出以下异常

[org.jbpm.services.task.persistence.TaskTransactionInterceptor] (http-localhost/127.0.0.1:8080-5) Could not commit session: org.jbpm.services.task.exception.PermissionDeniedException: User '[UserImpl:'admin']' was unable to execution operation 'Start' on task id 1 due to a no 'current status' match  

经过大量的努力,调试代码后,我知道在
jbpm-human-task-core-6.0.1.Final.jar中的
操作dsl.mvel
文件中有
启动、完成、失败、退出等操作。
因为当前状态未定义。这是由于在完成任务时出现了一些错误而导致的。例如:

taskService.start(taskId, username);   
在此步骤之前,状态为“就绪”
执行此步骤后,状态将为“InProgress”

执行
complete()
时,如果出现异常,则状态将仅为
“InProgress”

因此,如果用户试图完成任务,它将从
start()
方法开始,在该方法状态下
未定义“InProgress”
。因此,它抛出以下异常

[org.jbpm.services.task.persistence.TaskTransactionInterceptor] (http-localhost/127.0.0.1:8080-5) Could not commit session: org.jbpm.services.task.exception.PermissionDeniedException: User '[UserImpl:'admin']' was unable to execution operation 'Start' on task id 1 due to a no 'current status' match