diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/MilestoneComponent.java b/ganttzk/src/main/java/org/zkoss/ganttz/MilestoneComponent.java index edb615eda..0ac1684f8 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/MilestoneComponent.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/MilestoneComponent.java @@ -33,4 +33,9 @@ public class MilestoneComponent extends TaskComponent { super(task, disabilityConfiguration); } + @Override + protected boolean canShowResourcesText() { + return false; + } + } diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/TaskComponent.java b/ganttzk/src/main/java/org/zkoss/ganttz/TaskComponent.java index d89776e2a..6158c0a97 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/TaskComponent.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/TaskComponent.java @@ -203,16 +203,26 @@ public class TaskComponent extends Div implements AfterCompose { @Override public void reloadResourcesTextRequested() { - smartUpdate("resourcesText", getResourcesText()); + if (canShowResourcesText()) { + smartUpdate("resourcesText", getResourcesText()); + } String cssClass = isSubcontracted() ? "box subcontracted-task" : "box standard-task"; response("setClass", new AuInvoke(TaskComponent.this, "setClass", cssClass)); } + }; this.task.addReloadListener(reloadResourcesTextRequested); } + /** + * Note: This method is intended to be overridden. + */ + protected boolean canShowResourcesText() { + return true; + } + protected String calculateClass() { String classText; if (getSclass().equals("null")) { diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/TaskElementAdapter.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/TaskElementAdapter.java index b8037726d..4a9e95782 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/TaskElementAdapter.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/TaskElementAdapter.java @@ -359,6 +359,9 @@ public class TaskElementAdapter implements ITaskElementAdapter { @Override public String getResourcesText() { + if (taskElement.getOrderElement() == null) { + return ""; + } try { return transactionService .runOnAnotherReadOnlyTransaction(new IOnTransaction() {