当前位置: 首页 > 知识库问答 >
问题:

PermissionDeniedException:由于没有“当前状态”匹配,用户“[UserImpl:'admin']”无法对任务id 1执行操作“启动”

百里金林
2023-03-14

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

[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流程流程不熟悉,但我尽了最大努力来解决这个问题。但没有找到解决办法。请告诉我怎么解决?哪里出了问题,比如配置或其他什么<谢谢,乔达里先生

共有2个答案

史昊焱
2023-03-14

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

欧阳正谊
2023-03-14

经过大量的努力,调试代码,我知道在operations-dsl.mvel文件中,在jbpm-man-task-core-6.0.1. Final.jar具有开始,完成,失败,退出等操作。在当前状态没有定义。这是由于完成任务时的一些错误而发生的。例如:

taskService.start(taskId, username);   

在此步骤之前,状态为“就绪”
执行此步骤后,状态为“正在进行”

taskService.complete(taskId, username, parameterMap);  

当执行完成()时,如果任何异常导致,那么状态将是"Ingres"
因此,如果用户尝试完成任务,它将从start()方法开始,在该方法中,状态"Ingres"没有定义。因此,它引发以下异常。

[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  

 类似资料:
  • 我是统一的新手,在相机上练习变换动作。我正在应用的c#脚本的代码是。 我搜索了问题,并设法得到调试器无法从堆栈顶部获取任何内容。但我无法找出它与特定代码的关系,以及实际问题存在的地方? 错误日志:解决方案-

  • 我的Flink作业从kafka主题读取并将数据存储在RocksDB状态后端,以利用可查询状态。我能够在本地机器中运行作业并查询状态。但是在集群上部署时,我收到以下错误: 我已经尝试在集群级别和作业级别设置rocksDB状态后端。当它设置为作业级别时,我已将其作为阴影依赖项提供。我也尝试在主机集群机器上编译代码。我在所有情况下都会得到相同的错误。 如何解决此错误?

  • 无法在 AnjularJS 应用程序中看到拖动的元素,即使执行了拖放操作且没有任何错误。 代码如下: 以下是执行和执行的不同方法,没有错误: 还执行了JavaScript方法:但是没有运气,它也执行没有错误,但无法执行拖放操作在UIenter图像描述在这里 上述所有方法和命令都是编译和执行的,没有任何错误,但无法在UI中执行拖放操作(请帮助)。 尝试了所有可能的组合,我知道任何人都可以让我知道我错

  • 我的意图是对进行简单的克隆,但在此之前,我在修改列表时遇到了一个问题。在列表中添加另一个元素 为什么?