1 Reply Latest reply on Dec 9, 2013 1:28 AM by swiderski.maciej

    JBPM 5.4 random silent failure to create next user task

    remybouquet

      Hi,

      We're using JBPM 5.4 for a web application deployed on tomact 7. We're using the LocalTaskService, as the bpm is embedded in our application.

       

      Here is what our process looks like.

      6Y0epio.png

       

      We only have humanTasks in the process, and we managed to have it to work, in every cases.

      But, sometime, when completing a task (not always the same), the process is not able to go on, and doesn't create the next Task in the data base with no error.

      To assign the tasks we use variable in the process that are basically roles. For example we have a "supervisor" role that is assign to an employee id when the process starts.

      Each task has a ActorId set to one of this role variable (ie #{supervisor})

      To complete each task we do this (pseudo code).

      1. Get the current reserved task (we can only have one, so that's convenient).

      2. Start the task with the assignee (already set by jbpm).

      3. Complete the task by using a completeWithResult, feeding the result with a map containing the transition name for the next gateway (resolved with a condition set on a gateway).

       

      Once this is done, most of the time it works and JBPM creates the next user task in the database, assign it to the correct user and set it to reserved.

      Every now and then, the task is not created resulting in inability to go on with the process on next step.

       

      Are we doing something wrong? Is that a common pitfall?

      Attached is our jbpm-context.xml configuration file for more information.

        • 1. Re: JBPM 5.4 random silent failure to create next user task
          swiderski.maciej

          looks like there is not listener attached to task service when task is completed and thus resulting in not signaling the engine to move on. This is usually handled by human task work item handler that connects to task service and awaits for signals. Could be worth double checking that when you complete a task there is an active ksession with workitem handler for human tasks connected to task service. Once that is in place at the time you complete the task it will trigger process instance to move on.

           

          HTH