[jbpm-dev] Task object with stale data
Mauricio Salatino
salaboy at gmail.com
Wed Aug 1 19:30:08 EDT 2012
Hi Marcelo,
You should not post user questions to the jbpm-dev list, you should use the
forum for this kind of questions.
Can you please post the question in the forum with a test to reproduce your
problem?
Cheers
On Wed, Aug 1, 2012 at 10:38 PM, Marcelo Zabalet <zabalet at gmail.com> wrote:
> Hey.
>
> I'm working on a long-term government project for the implementation of
> BPM. We are building an application with jBPM to expose BPM to other
> projects as a service. I'll be working with this for a while.
>
> Well, going to the point, the problem I have now is an object "Task" with
> stale data when I try to do a CompleteTask operation.
>
> To set the context: this project is based on
>
> <parent>
> <groupId>org.drools</groupId>
> <artifactId>droolsjbpm-parent</artifactId>
> <version>5.4.0.Final</version>
> </parent>
>
> using, at the moment, a local strategy for the Human Task Service (not
> Mina, nor MQ) accesing the service with this class:
>
> org.jboss.bpm.console.server.integration.TaskManagement.
>
>
> By completing a task from here: TaskManagement.completeTask (taskId, data,
> user ID), I found the symptom of losing the assignment of task vars to the
> process. I don't know what exactly the problem is, but trying to solve the
> problem, I realized that here:
>
> SyncWSHumanTaskHandler.handleCompletedTask(taskId) {
> Task task = client.getTask(taskId);
> ...
> if (task.getTaskData().getStatus() == Status.Completed)) {
> ...
> }
>
> the system ends up with a Task object with stale data. In the database,
> the task at hand has a Completed status, but in this case, the Task object
> has an InProgress status. So, the if-condition evaluates to false, never
> executing the corresponding block where lies the vars assigment stuff.
>
> Here is a copy of the stack at the three moments where the completeTask
> operation acquires a Task object from the database (or the persistence
> context).
>
> This acquires a task and marks it as InProgress
>
> TaskServiceSession.getTask(long) line: 527
> TaskServiceSession.taskOperation(Operation, long, String, String,
> ContentData, List<String>) line: 406
> LocalTaskService.start(long, String) line: 276
> TaskManagement.completeTask(long, Map, String) line: 95
>
> This acquires a task and marks it as Completed. I checked at this point
> and is the same Task Object (I mean same java Obect in memory), so far so
> good.
>
> TaskServiceSession.getTask(long) line: 527
> TaskServiceSession.taskOperation(Operation, long, String, String,
> ContentData, List<String>) line: 406
> LocalTaskService.complete(long, String, ContentData) line: 80
> TaskManagement.completeTask(long, Map, String) line: 113
>
> This acquires a Task for the work-item stuff.
> This is where the problem lies. The Task object is a diferent one from the
> previous ones and has stale data, so the status is InProgress.
> I think there is a conflict with the Entity Managers here...
>
> TaskServiceSession.getTask(long) line: 527
> LocalTaskService.getTask(long) line: 165
> SyncWSHumanTaskHandler$TaskCompletedHandler.handleCompletedTask(long)
> line: 345
> SyncWSHumanTaskHandler$TaskCompletedHandler$1.run() line: 333
> Thread.run() line: 662
>
>
> Obviously, the best answer is how I fix this to get it working ASAP :)
> Talking seriously, I will apreciate any tip or clue to help me focus in
> the right direction. Maybe I'm wrong from the root. Some of the questions
> that arise:
> I see that I'm using (indirectly)
> org.jbpm.process.workitem.wsht.SyncWSHumanTaskHandler that is marked as
> @Deprecated.
> Why is it deprecated or what should I use instead?
> I choose a local strategy, is still contemplated or will be removed and no
> one is thinking on local in favor of Mina, queues, or something else?
>
>
> Thanks in advance.
>
>
> Marcelo.
>
> _______________________________________________
> jbpm-dev mailing list
> jbpm-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/jbpm-dev
>
>
--
- MyJourney @ http://salaboy.wordpress.com
- Co-Founder @ http://www.jugargentina.org
- Co-Founder @ http://www.jbug.com.ar
- Salatino "Salaboy" Mauricio -
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jbpm-dev/attachments/20120802/f550cceb/attachment.html
More information about the jbpm-dev
mailing list