From 1ee7b2d536e1af127ed59a18e49913aebe9d4d64 Mon Sep 17 00:00:00 2001 From: Diego Pino Garcia Date: Fri, 8 Oct 2010 15:18:56 +0200 Subject: [PATCH] Fix NullPointerException try to convert null LocalDate to Date in TaskStartConstraint Select a new StartConstraintType in TaskProperties lunches a NullPointerException FEA: ItEr61S05BugFixing --- .../business/planner/entities/TaskStartConstraint.java | 7 +++++++ .../web/planner/taskedition/EditTaskController.java | 8 ++------ .../web/planner/taskedition/TaskPropertiesController.java | 3 +-- 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/navalplanner-business/src/main/java/org/navalplanner/business/planner/entities/TaskStartConstraint.java b/navalplanner-business/src/main/java/org/navalplanner/business/planner/entities/TaskStartConstraint.java index 74cccc0d8..c4860d1ed 100644 --- a/navalplanner-business/src/main/java/org/navalplanner/business/planner/entities/TaskStartConstraint.java +++ b/navalplanner-business/src/main/java/org/navalplanner/business/planner/entities/TaskStartConstraint.java @@ -19,6 +19,8 @@ */ package org.navalplanner.business.planner.entities; +import java.util.Date; + import org.apache.commons.lang.Validate; import org.joda.time.LocalDate; @@ -41,6 +43,11 @@ public class TaskStartConstraint { : StartConstraintType.AS_SOON_AS_POSSIBLE; } + public Date getConstraintDateAsDate() { + return constraintDate != null ? constraintDate.toDateTimeAtStartOfDay() + .toDate() : null; + } + public void explicityMovedTo(LocalDate date) { Validate.notNull(date); startConstraintType = startConstraintType.newTypeAfterMoved(); diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/taskedition/EditTaskController.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/taskedition/EditTaskController.java index ed9a9ccec..5eff0e11c 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/taskedition/EditTaskController.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/taskedition/EditTaskController.java @@ -449,12 +449,8 @@ public class EditTaskController extends GenericForwardComposer { if ((taskElement == null) || (!isTaskLeafConstraint())) { return null; } - LocalDate constraintDate = ((ITaskLeafConstraint) taskElement) - .getStartConstraint().getConstraintDate(); - if(constraintDate == null) { - return null; - } - return constraintDate.toDateTimeAtStartOfDay().toDate(); + return ((ITaskLeafConstraint) taskElement).getStartConstraint() + .getConstraintDateAsDate(); } private boolean isTaskLeafConstraint() { diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/taskedition/TaskPropertiesController.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/taskedition/TaskPropertiesController.java index 9b24b0144..d6af45e44 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/taskedition/TaskPropertiesController.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/taskedition/TaskPropertiesController.java @@ -294,8 +294,7 @@ public class TaskPropertiesController extends GenericForwardComposer { startConstraintDate.setVisible(constraint.isAssociatedDateRequired()); TaskStartConstraint taskStartConstraint = currentTaskElementAsTaskLeafConstraint() .getStartConstraint(); - startConstraintDate.setValue(taskStartConstraint.getConstraintDate() - .toDateTimeAtStartOfDay().toDate()); + startConstraintDate.setValue(taskStartConstraint.getConstraintDateAsDate()); } private boolean saveConstraintChanges() {