From 3bf7f075a7e7eb2d5e70a6a61e03d926d4edc4da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=93scar=20Gonz=C3=A1lez=20Fern=C3=A1ndez?= Date: Mon, 10 Jan 2011 16:35:57 +0100 Subject: [PATCH] Avoid LazyInitializationException accessing template's labels This exception happened after saving and continuing due to labels not being in the session. ERROR org.hibernate.LazyInitializationException - failed to lazily initialize a collection of role: org.navalplanner.business.templates.entities.OrderElementTemplate.labels, no session or session was closed org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: org.navalplanner.business.templates.entities.OrderElementTemplate.labels, no session or session was closed FEA: ItEr68S04BugFixing --- .../web/templates/OrderTemplatesModel.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/templates/OrderTemplatesModel.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/templates/OrderTemplatesModel.java index 3d2620dfa..7a6cbaafd 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/templates/OrderTemplatesModel.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/templates/OrderTemplatesModel.java @@ -185,6 +185,7 @@ public class OrderTemplatesModel implements IOrderTemplatesModel { private void loadAssociatedData(OrderElementTemplate template) { loadAdvanceAssignments(template); loadQualityForms(template); + loadLabels(template); loadCriterionRequirements(template); getOrderElementsOnConversation().initialize(template); } @@ -221,6 +222,16 @@ public class OrderTemplatesModel implements IOrderTemplatesModel { } } + private void loadLabels(OrderElementTemplate template) { + for (Label each : template.getLabels()) { + each.getName(); + } + for (OrderElementTemplate each : template.getChildrenTemplates()) { + loadLabels(each); + } + + } + private void loadAdvanceAssignments(OrderElementTemplate template) { for (AdvanceAssignmentTemplate each : template .getAdvanceAssignmentTemplates()) {