diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/resources/search/AllocationSelectorController.java b/libreplan-webapp/src/main/java/org/libreplan/web/resources/search/AllocationSelectorController.java index 15e9e8ab5..b428a2b31 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/resources/search/AllocationSelectorController.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/resources/search/AllocationSelectorController.java @@ -23,6 +23,7 @@ package org.libreplan.web.resources.search; import java.util.List; +import org.libreplan.business.common.IAdHocTransactionService; import org.libreplan.business.resources.daos.IResourceLoadRatiosCalculator; import org.libreplan.business.resources.daos.IResourcesSearcher; import org.libreplan.business.resources.entities.Criterion; @@ -42,6 +43,9 @@ public abstract class AllocationSelectorController extends // injected by name protected IResourcesSearcher resourcesSearcher; + // injected by name + protected IAdHocTransactionService adHocTransactionService; + // injected by name protected IResourceLoadRatiosCalculator resourceLoadRatiosCalculator; diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/resources/search/NewAllocationSelectorController.java b/libreplan-webapp/src/main/java/org/libreplan/web/resources/search/NewAllocationSelectorController.java index 4fac1d644..bf76254f5 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/resources/search/NewAllocationSelectorController.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/resources/search/NewAllocationSelectorController.java @@ -38,6 +38,7 @@ import java.util.Set; import org.apache.commons.lang.Validate; import org.joda.time.LocalDate; +import org.libreplan.business.common.IOnTransaction; import org.libreplan.business.resources.daos.IResourceLoadRatiosCalculator.ILoadRatiosDataType; import org.libreplan.business.resources.daos.IResourcesSearcher.IResourcesQuery; import org.libreplan.business.resources.entities.Criterion; @@ -394,14 +395,25 @@ public class NewAllocationSelectorController extends public void clearAll() { } - public void open(LocalDate start, LocalDate end) { + public void open(final LocalDate start, final LocalDate end) { setStartFilteringDate(start); setEndFilteringDate(end); - refreshListBoxResources(); clearSelection(listBoxResources); clearSelection(criterionsTree); - criterionsTree.setModel(getCriterions()); + + + adHocTransactionService + .runOnReadOnlyTransaction(new IOnTransaction() { + @Override + public Void execute() { + refreshListBoxResources(); + criterionsTree.setModel(getCriterions()); + + return null; + } + }); + doInitialSelection(); }