From e2c489e904b7b5c76eb1be8d184a1c076eb903e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=93scar=20Gonz=C3=A1lez=20Fern=C3=A1ndez?= Date: Tue, 20 Sep 2011 15:54:11 +0200 Subject: [PATCH] ConcurrenetModificationException shouldn't happen FEA: ItEr75S11PreventLooseChanges --- .../java/org/navalplanner/web/orders/IOrderModel.java | 3 +-- .../org/navalplanner/web/orders/OrderCRUDController.java | 8 ++------ .../main/java/org/navalplanner/web/orders/OrderModel.java | 7 +++++-- 3 files changed, 8 insertions(+), 10 deletions(-) diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/orders/IOrderModel.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/orders/IOrderModel.java index 73144f8ee..2324b5741 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/orders/IOrderModel.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/orders/IOrderModel.java @@ -21,7 +21,6 @@ package org.navalplanner.web.orders; -import java.util.ConcurrentModificationException; import java.util.List; import java.util.Map; @@ -84,7 +83,7 @@ public interface IOrderModel extends IIntegrationEntityModel { void initEdit(Order order); - void prepareForCreate() throws ConcurrentModificationException; + void prepareForCreate(); void remove(Order order); diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/orders/OrderCRUDController.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/orders/OrderCRUDController.java index 2c25554fb..ad1db0cf3 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/orders/OrderCRUDController.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/orders/OrderCRUDController.java @@ -1062,12 +1062,8 @@ public class OrderCRUDController extends GenericForwardComposer { } public void goToCreateForm() { - try { - prepareForCreate(); - getCreationPopup().showWindow(this, null); - } catch (ConcurrentModificationException e) { - messagesForUser.showMessage(Level.ERROR, e.getMessage()); - } + prepareForCreate(); + getCreationPopup().showWindow(this, null); } public void prepareForCreate() { diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/orders/OrderModel.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/orders/OrderModel.java index e85cb4d44..5698c4bd0 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/orders/OrderModel.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/orders/OrderModel.java @@ -25,7 +25,6 @@ import static org.navalplanner.web.I18nHelper._; import java.math.BigDecimal; import java.util.ArrayList; import java.util.Collection; -import java.util.ConcurrentModificationException; import java.util.Date; import java.util.HashMap; import java.util.HashSet; @@ -89,6 +88,7 @@ import org.navalplanner.business.users.entities.UserRole; import org.navalplanner.web.common.IntegrationEntityModel; import org.navalplanner.web.common.concurrentdetection.OnConcurrentModification; import org.navalplanner.web.orders.labels.LabelsOnConversation; +import org.navalplanner.web.planner.order.PlanningStateCreator; import org.navalplanner.web.security.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.config.BeanDefinition; @@ -109,6 +109,9 @@ import org.zkoss.zul.Messagebox; @OnConcurrentModification(goToPage = "/planner/index.zul;orders_list") public class OrderModel extends IntegrationEntityModel implements IOrderModel { + @Autowired + private PlanningStateCreator planningStateCreator; + @Autowired private ICriterionTypeDAO criterionTypeDAO; @@ -412,7 +415,7 @@ public class OrderModel extends IntegrationEntityModel implements IOrderModel { @Override @Transactional(readOnly = true) - public void prepareForCreate() throws ConcurrentModificationException { + public void prepareForCreate() { loadNeededDataForConversation(); this.order = Order.create(); initializeOrder();