diff --git a/source/java/org/alfresco/repo/workflow/jbpm/JBPMEngine.java b/source/java/org/alfresco/repo/workflow/jbpm/JBPMEngine.java index 2b090fafde..10d8e72487 100644 --- a/source/java/org/alfresco/repo/workflow/jbpm/JBPMEngine.java +++ b/source/java/org/alfresco/repo/workflow/jbpm/JBPMEngine.java @@ -1501,7 +1501,12 @@ public class JBPMEngine extends BPMEngine { throw new WorkflowException("Task owner '" + value + "' is invalid"); } - instance.setActorId((String)value); + String actorId = (String)value; + String existingActorId = instance.getActorId(); + if (existingActorId == null || !actorId.equals(existingActorId)) + { + instance.setActorId((String)value); + } continue; } } diff --git a/source/java/org/alfresco/repo/workflow/jbpm/test_taskassign.xml b/source/java/org/alfresco/repo/workflow/jbpm/test_taskassign.xml new file mode 100644 index 0000000000..0af8c39c25 --- /dev/null +++ b/source/java/org/alfresco/repo/workflow/jbpm/test_taskassign.xml @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + #{bpm_assignee} + + + + + + + + + + + + + + + \ No newline at end of file