Index: lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/LearningDesignService.java =================================================================== RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/LearningDesignService.java,v diff -u -r1.32.2.11 -r1.32.2.12 --- lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/LearningDesignService.java 2 Jun 2016 14:50:46 -0000 1.32.2.11 +++ lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/LearningDesignService.java 6 Jun 2016 06:59:02 -0000 1.32.2.12 @@ -231,8 +231,8 @@ .getActivitiesByLibraryID(learningLibrary.getLearningLibraryId()); if ((templateActivities != null) & (templateActivities.size() == 0)) { - log.error("Learning Library with ID " + learningLibrary.getLearningLibraryId() - + " does not have a template activity"); + log.error("Learning Library with ID " + learningLibrary.getLearningLibraryId() + "\"" + + learningLibrary.getTitle() + "\" does not have a template activity"); } // convert library to DTO format @@ -256,9 +256,14 @@ List tools = new ArrayList(); for (LearningLibraryDTO learningLibrary : learningLibraries) { // skip invalid tools - boolean isParallel = learningLibrary.getTemplateActivities().size() > 1; + List libraryActivityDTOs = learningLibrary.getTemplateActivities(); + if (libraryActivityDTOs.isEmpty()) { + log.error("Learning Library with ID " + learningLibrary.getLearningLibraryID() + "\"" + + learningLibrary.getTitle() + "\" does not have a template activity"); + continue; + } + boolean isParallel = libraryActivityDTOs.size() > 1; if ((includeInvalid || learningLibrary.getValidFlag()) && (includeParallel || !isParallel)) { - List libraryActivityDTOs = learningLibrary.getTemplateActivities(); LibraryActivityDTO libraryActivityDTO = libraryActivityDTOs.get(0); ToolDTO toolDTO = new ToolDTO(); if (isParallel) {