diff --git a/config/alfresco/web-client-config-properties.xml b/config/alfresco/web-client-config-properties.xml index 3246248688..cb3015c162 100644 --- a/config/alfresco/web-client-config-properties.xml +++ b/config/alfresco/web-client-config-properties.xml @@ -391,6 +391,19 @@ + + + + + + + + + + + + + diff --git a/source/java/org/alfresco/web/bean/workflow/WorkflowBean.java b/source/java/org/alfresco/web/bean/workflow/WorkflowBean.java index 2c9915eb07..ef38e015f4 100644 --- a/source/java/org/alfresco/web/bean/workflow/WorkflowBean.java +++ b/source/java/org/alfresco/web/bean/workflow/WorkflowBean.java @@ -399,6 +399,11 @@ public class WorkflowBean implements Serializable } } + if(outcome == null) + { + // TODO: is this okay -> no real transitions exist for activiti + outcome = transition; + } if (outcome != null) { node.getProperties().put("outcome", outcome); diff --git a/source/java/org/alfresco/web/ui/repo/component/UIWorkflowHistory.java b/source/java/org/alfresco/web/ui/repo/component/UIWorkflowHistory.java index 0f53a6c094..a2b1545881 100644 --- a/source/java/org/alfresco/web/ui/repo/component/UIWorkflowHistory.java +++ b/source/java/org/alfresco/web/ui/repo/component/UIWorkflowHistory.java @@ -19,6 +19,7 @@ package org.alfresco.web.ui.repo.component; import java.io.IOException; +import java.io.Serializable; import java.util.Date; import java.util.List; import java.util.ResourceBundle; @@ -162,7 +163,17 @@ public class UIWorkflowHistory extends SelfRenderingComponent // output a row for each previous completed task for (WorkflowTask task : tasks) { - Long id = (Long)task.properties.get(WorkflowModel.PROP_TASK_ID); + String id = null; + Serializable idObject = task.properties.get(WorkflowModel.PROP_TASK_ID); + if (idObject instanceof Long) + { + id = ((Long)idObject).toString(); + } + else + { + id = idObject.toString(); + } + String desc = (String)task.properties.get(WorkflowModel.PROP_DESCRIPTION); Date createdDate = (Date)task.properties.get(ContentModel.PROP_CREATED); String owner = (String)task.properties.get(ContentModel.PROP_OWNER); @@ -183,12 +194,19 @@ public class UIWorkflowHistory extends SelfRenderingComponent } } + if ((outcome == null || outcome.equals("")) && transition != null) + { + // it's possible in Activiti to have tasks without an outcome set, + // in this case default to the transition, if there is one. + outcome = transition; + } + out.write(""); out.write(desc == null ? "" : Utils.encode(desc)); out.write(""); out.write(Utils.encode(task.title)); out.write(""); - out.write(id.toString()); + out.write(id); out.write(""); out.write(Utils.getDateTimeFormat(context).format(createdDate)); out.write("");