Index: lams_build/lib/lams/lams-central.jar =================================================================== diff -u -rcad516bd852b193b61c821c5177cecacf3e5d016 -rebd388504924fe0a06bbf20a06fe0032abbf8d15 Binary files differ Index: lams_build/lib/lams/lams.jar =================================================================== diff -u -ra2d72bee6029b7e05e8cd696c02db214f3049365 -rebd388504924fe0a06bbf20a06fe0032abbf8d15 Binary files differ Index: lams_build/lib/spring/spring.module.xml =================================================================== diff -u -r969b1185a18d028b10bb0bd4aa2af6ea93e0f8b5 -rebd388504924fe0a06bbf20a06fe0032abbf8d15 --- lams_build/lib/spring/spring.module.xml (.../spring.module.xml) (revision 969b1185a18d028b10bb0bd4aa2af6ea93e0f8b5) +++ lams_build/lib/spring/spring.module.xml (.../spring.module.xml) (revision ebd388504924fe0a06bbf20a06fe0032abbf8d15) @@ -1,56 +1,57 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file Index: lams_common/src/java/org/lamsfoundation/lams/commonContext.xml =================================================================== diff -u -rad8707a3e0b0501d651993f3da9dd0ba975f39fc -rebd388504924fe0a06bbf20a06fe0032abbf8d15 --- lams_common/src/java/org/lamsfoundation/lams/commonContext.xml (.../commonContext.xml) (revision ad8707a3e0b0501d651993f3da9dd0ba975f39fc) +++ lams_common/src/java/org/lamsfoundation/lams/commonContext.xml (.../commonContext.xml) (revision ebd388504924fe0a06bbf20a06fe0032abbf8d15) @@ -1,631 +1,632 @@ - - - - - - - - - - - - - - - - classpath*:org/lamsfoundation/lams/**/*.hbm.xml - classpath*:org/eucm/lams/**/*.hbm.xml - - - - - - - - - - - true - - - PROPAGATION_REQUIRES_NEW - - - - - - - - - - - - - - - - - - - - - - - - true - - - - - - - - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - - - - - - - - - - - - - - - - - - true - - - - - - - - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - - - - - - - - - - - - - - - - - true - - - - - - - - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - - - - - - - - - - - - - true - - - - - - - - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - - - - - - - - - - - - true - - - - - - - - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - - - - - - - - - - - - - - true - - - - - - - - PROPAGATION_REQUIRED - - - - - - - - - - - - - - - - - - - - - - - - - - - - - true - - - - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED,+java.lang.Exception - PROPAGATION_REQUIRED,+java.lang.Exception - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - true - - - - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - - - - - - - - - - - - - - - - - - - true - - - - - - - - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - - - - - - - - - - - - - org.springframework.scheduling.quartz.LocalDataSourceJobStore - org.quartz.impl.jdbcjobstore.StdJDBCDelegate - lams_qtz_ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - true - - - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - - - - - - - - - - - - - - - - - - - - true - - - PROPAGATION_REQUIRED - PROPAGATION_REQUIRED - - - - - - - - - - - - - - true - - - - - - - - PROPAGATION_REQUIRED,readOnly - PROPAGATION_REQUIRED,readOnly - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + classpath*:org/lamsfoundation/lams/**/*.hbm.xml + classpath*:org/eucm/lams/**/*.hbm.xml + + + + + + + + + + + + + true + + + PROPAGATION_REQUIRES_NEW + + + + + + + + + + + + + + + + + + + + + + + + true + + + + + + + + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + + + + + + + + + + + + + + + + + + true + + + + + + + + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + + + + + + + + + + + + + + + + + true + + + + + + + + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + + + + + + + + + + + + + true + + + + + + + + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + + + + + + + + + + + + true + + + + + + + + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + + + + + + + + + + + + + + true + + + + + + + + PROPAGATION_REQUIRED + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED,+java.lang.Exception + PROPAGATION_REQUIRED,+java.lang.Exception + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + + + + + + + + + + + + + + + + + + + true + + + + + + + + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + + + + + + + + + + + + + org.springframework.scheduling.quartz.LocalDataSourceJobStore + org.quartz.impl.jdbcjobstore.StdJDBCDelegate + lams_qtz_ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + + + + + + + + + + + + + + + + + + + + true + + + PROPAGATION_REQUIRED + PROPAGATION_REQUIRED + + + + + + + + + + + + + + true + + + + + + + + PROPAGATION_REQUIRED,readOnly + PROPAGATION_REQUIRED,readOnly + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Index: lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/controller/NbAuthoringController.java =================================================================== diff -u -r36580dd1c205ab30b25db66efa5e8499ae5a308e -rebd388504924fe0a06bbf20a06fe0032abbf8d15 --- lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/controller/NbAuthoringController.java (.../NbAuthoringController.java) (revision 36580dd1c205ab30b25db66efa5e8499ae5a308e) +++ lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/controller/NbAuthoringController.java (.../NbAuthoringController.java) (revision ebd388504924fe0a06bbf20a06fe0032abbf8d15) @@ -102,7 +102,7 @@ String contentIdString = nbAuthoringForm.getToolContentID(); // Long contentId = NbWebUtil.convertToLong(nbAuthoringForm.getToolContentID()); // String contentFolderId = nbAuthoringForm.getContentFolderID(); - + Long contentId = WebUtil.readLongParam(request, NoticeboardConstants.TOOL_CONTENT_ID); String contentFolderId = WebUtil.readStrParam(request, NoticeboardConstants.CONTENT_FOLDER_ID); @@ -163,16 +163,12 @@ } request.setAttribute(FORM, nbAuthoringForm); - + return "authoring/authoring"; } /** * Checks the session to see if the title and content session variables exist or not. - * - * @param session - * The HttpSession to check. - * @return true if the parameters title and content exists in the session, false otherwise */ private boolean contentExists(INoticeboardService service, Long id) { NoticeboardContent nb = service.retrieveNoticeboard(id); @@ -184,19 +180,20 @@ } - @RequestMapping(value = "/authoring/save", method = RequestMethod.POST) + @RequestMapping(value = "/save", method = RequestMethod.POST) public String save(@ModelAttribute NbAuthoringForm nbAuthoringForm, HttpServletRequest request) { //copyAuthoringFormValuesIntoFormBean(request, nbForm); - String contentId = WebUtil.readStrParam(request, NoticeboardConstants.TOOL_CONTENT_ID); - Long content_id = WebUtil.readLongParam(request,NoticeboardConstants.TOOL_CONTENT_ID); + String idAsString = nbAuthoringForm.getToolContentID(); - if (contentId == null) { + if (idAsString == null) { String error = messageService.getMessage(NoticeboardConstants.ERR_MISSING_PARAM, "Tool Content Id"); logger.error(error); throw new NbApplicationException(error); } + Long content_id = NbWebUtil.convertToLong(nbAuthoringForm.getToolContentID()); + //throws exception if the content id does not exist checkContentId(content_id); @@ -226,9 +223,6 @@ /** * It is assumed that the contentId is passed as a http parameter * if the contentId is null, an exception is thrown, otherwise proceed as normal - * - * @param contentId - * the toolContentId to check */ private void checkContentId(Long contentId) { if (contentId == null) { Index: lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/controller/NbLearnerController.java =================================================================== diff -u -re998cf2de8c4714022559cb5f67e61b677a2dd28 -rebd388504924fe0a06bbf20a06fe0032abbf8d15 --- lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/controller/NbLearnerController.java (.../NbLearnerController.java) (revision e998cf2de8c4714022559cb5f67e61b677a2dd28) +++ lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/controller/NbLearnerController.java (.../NbLearnerController.java) (revision ebd388504924fe0a06bbf20a06fe0032abbf8d15) @@ -112,12 +112,6 @@ /** * Indicates that the user has finished viewing the noticeboard. * The session is set to complete and leaveToolSession is called. - * - * @param mapping - * @param form - * @param request - * @param response - * @return */ @RequestMapping("/finish") public String finish(@ModelAttribute NbLearnerForm nbLearnerForm, HttpServletRequest request, @@ -189,12 +183,6 @@ /** * Indicates that the user has finished viewing the noticeboard, and will be * passed onto the Notebook reflection screen. - * - * @param mapping - * @param form - * @param request - * @param response - * @return */ @RequestMapping("/reflect") public String reflect(@ModelAttribute NbLearnerForm nbLearnerForm, HttpServletRequest request) { Index: lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/controller/NbLearnerStarterController.java =================================================================== diff -u -re998cf2de8c4714022559cb5f67e61b677a2dd28 -rebd388504924fe0a06bbf20a06fe0032abbf8d15 --- lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/controller/NbLearnerStarterController.java (.../NbLearnerStarterController.java) (revision e998cf2de8c4714022559cb5f67e61b677a2dd28) +++ lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/controller/NbLearnerStarterController.java (.../NbLearnerStarterController.java) (revision ebd388504924fe0a06bbf20a06fe0032abbf8d15) @@ -23,6 +23,8 @@ package org.lamsfoundation.lams.tool.noticeboard.web.controller; +import java.util.List; + import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; @@ -47,7 +49,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.stereotype.Controller; -import org.springframework.validation.Errors; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.context.WebApplicationContext; @@ -114,35 +115,32 @@ return WebUtil.readLongParam(request, AttributeNames.PARAM_USER_ID, false); } - public String unspecified(@ModelAttribute NbLearnerForm NbLearnerForm, Errors errors, HttpServletRequest request, - HttpServletResponse response) { + public String unspecified(@ModelAttribute NbLearnerForm NbLearnerForm, List messages, + HttpServletRequest request, HttpServletResponse response) { - return learner(NbLearnerForm, errors, request, response); + return learner(NbLearnerForm, messages, request, response); } @RequestMapping("/learner") - public String learner(@ModelAttribute NbLearnerForm NbLearnerForm, Errors errors, HttpServletRequest request, - HttpServletResponse response) { + public String learner(@ModelAttribute NbLearnerForm NbLearnerForm, List messages, + HttpServletRequest request, HttpServletResponse response) { NoticeboardContent nbContent = null; NoticeboardUser nbUser = null; -// saveMessages(request, null); Long toolSessionID = NbWebUtil.convertToLong(NbLearnerForm.getToolSessionID()); if (toolSessionID == null) { String error = "Unable to continue. The parameters tool session id is missing"; - logger.error(error); - throw new NbApplicationException(error); + messages.add(error); } nbContent = nbService.retrieveNoticeboardBySessionID(toolSessionID); // nbSession = nbService.retrieveNoticeboardSession(toolSessionId); if (nbContent == null) { String error = "An Internal error has occurred. Please exit and retry this sequence"; - logger.error(error); - throw new NbApplicationException(error); + messages.add(error); } if (isFlagSet(nbContent, NoticeboardConstants.FLAG_DEFINE_LATER)) { @@ -201,27 +199,26 @@ * If the particular flag is set, control is forwarded to jsp page * displaying to the user the message according to what flag is set. */ -// if (displayMessageToUser(nbContent, errors)) { -// saveMessages(request, message); -//A request.setAttribute("messageForm", ); -//A return ("message"); -// } + if (displayMessageToUser(nbContent, messages)) { + request.setAttribute("messages", messages); +// return ("message"); + } return "learnerContent"; } @RequestMapping("/teacher") - public String teacher(@ModelAttribute NbLearnerForm NbLearnerForm, Errors errors, HttpServletRequest request, - HttpServletResponse response) throws NbApplicationException { - return learner(NbLearnerForm, errors, request, response); + public String teacher(@ModelAttribute NbLearnerForm NbLearnerForm, List messages, + HttpServletRequest request, HttpServletResponse response) throws NbApplicationException { + return learner(NbLearnerForm, messages, request, response); } @RequestMapping("/author") - public String author(@ModelAttribute NbLearnerForm NbLearnerForm, Errors errors, HttpServletRequest request, + public String author(@ModelAttribute NbLearnerForm NbLearnerForm, List messages, HttpServletRequest request, HttpServletResponse response) throws NbApplicationException { - return learner(NbLearnerForm, errors, request, response); + return learner(NbLearnerForm, messages, request, response); } @@ -272,11 +269,11 @@ * the instance of ActtionMessages * @return true if any of the flags are set, false otherwise */ - private boolean displayMessageToUser(NoticeboardContent content, Errors errors) { + private boolean displayMessageToUser(NoticeboardContent content, List messages) { boolean isDefineLaterSet = isFlagSet(content, NoticeboardConstants.FLAG_DEFINE_LATER); if (isDefineLaterSet) { if (isDefineLaterSet) { - errors.reject("message.defineLaterSet"); + messages.add("message.defineLaterSet"); } return true; } else { Index: lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/controller/NbMonitoringController.java =================================================================== diff -u -re998cf2de8c4714022559cb5f67e61b677a2dd28 -rebd388504924fe0a06bbf20a06fe0032abbf8d15 --- lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/controller/NbMonitoringController.java (.../NbMonitoringController.java) (revision e998cf2de8c4714022559cb5f67e61b677a2dd28) +++ lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/controller/NbMonitoringController.java (.../NbMonitoringController.java) (revision ebd388504924fe0a06bbf20a06fe0032abbf8d15) @@ -41,7 +41,6 @@ import org.lamsfoundation.lams.tool.noticeboard.NoticeboardUser; import org.lamsfoundation.lams.tool.noticeboard.dto.ReflectionDTO; import org.lamsfoundation.lams.tool.noticeboard.service.INoticeboardService; -import org.lamsfoundation.lams.tool.noticeboard.util.NbApplicationException; import org.lamsfoundation.lams.tool.noticeboard.util.NbWebUtil; import org.lamsfoundation.lams.tool.noticeboard.web.form.NbMonitoringForm; import org.lamsfoundation.lams.util.WebUtil; @@ -70,14 +69,15 @@ public final static String FORM = "NbMonitoringForm"; @RequestMapping("/monitoring") - public String unspecified(@ModelAttribute NbMonitoringForm nbMonitoringForm, HttpServletRequest request) { + public String unspecified(@ModelAttribute NbMonitoringForm nbMonitoringForm, List messages, + HttpServletRequest request) { Long toolContentId = NbWebUtil.convertToLong(request.getParameter(NoticeboardConstants.TOOL_CONTENT_ID)); String contentFolderID = WebUtil.readStrParam(request, NoticeboardConstants.CONTENT_FOLDER_ID); if (toolContentId == null) { String error = "Unable to continue. Tool content id missing"; - logger.error(error); - throw new NbApplicationException(error); + messages.add(error); + request.setAttribute("messages", messages); } NoticeboardContent content = nbService.retrieveNoticeboard(toolContentId); Index: lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/controller/NbPedagogicalPlannerController.java =================================================================== diff -u -re998cf2de8c4714022559cb5f67e61b677a2dd28 -rebd388504924fe0a06bbf20a06fe0032abbf8d15 --- lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/controller/NbPedagogicalPlannerController.java (.../NbPedagogicalPlannerController.java) (revision e998cf2de8c4714022559cb5f67e61b677a2dd28) +++ lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/controller/NbPedagogicalPlannerController.java (.../NbPedagogicalPlannerController.java) (revision ebd388504924fe0a06bbf20a06fe0032abbf8d15) @@ -23,6 +23,9 @@ package org.lamsfoundation.lams.tool.noticeboard.web.controller; +import java.util.ArrayList; +import java.util.List; + import javax.servlet.http.HttpServletRequest; import org.apache.log4j.Logger; @@ -34,7 +37,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.stereotype.Controller; -import org.springframework.validation.Errors; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; @@ -75,10 +77,10 @@ @RequestMapping("/saveorupdate") public String saveOrUpdatePedagogicalPlannerForm(@ModelAttribute NbPedagogicalPlannerForm plannerForm, - Errors errors, HttpServletRequest request) { + List messages, HttpServletRequest request) { - plannerForm.validate(errors); - if (!errors.hasErrors()) { + plannerForm.validate(messages); + if (messages != null && !messages.isEmpty()) { String content = plannerForm.getBasicContent(); Long toolContentID = plannerForm.getToolContentID(); NoticeboardContent noticeboard = nbService.retrieveNoticeboard(toolContentID); Index: lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/form/NbPedagogicalPlannerForm.java =================================================================== diff -u -ra2d72bee6029b7e05e8cd696c02db214f3049365 -rebd388504924fe0a06bbf20a06fe0032abbf8d15 --- lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/form/NbPedagogicalPlannerForm.java (.../NbPedagogicalPlannerForm.java) (revision a2d72bee6029b7e05e8cd696c02db214f3049365) +++ lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/form/NbPedagogicalPlannerForm.java (.../NbPedagogicalPlannerForm.java) (revision ebd388504924fe0a06bbf20a06fe0032abbf8d15) @@ -22,6 +22,8 @@ package org.lamsfoundation.lams.tool.noticeboard.web.form; +import java.util.List; + import org.lamsfoundation.lams.tool.noticeboard.NoticeboardContent; import org.lamsfoundation.lams.web.planner.PedagogicalPlannerActivityForm; import org.springframework.util.StringUtils; @@ -59,7 +61,7 @@ } } - public void validate(Errors errors) { + public void validate(List messages) { boolean valid = true; boolean allEmpty = true; if (basicContent != null && !basicContent.isEmpty()) { @@ -68,7 +70,7 @@ } } if (allEmpty) { - errors.reject("authoring.msg.no.tasks.save"); + messages.add("authoring.msg.no.tasks.save"); valid = false; basicContent = null; } Index: lams_tool_nb/web/authoring/authoring.jsp =================================================================== diff -u -r36580dd1c205ab30b25db66efa5e8499ae5a308e -rebd388504924fe0a06bbf20a06fe0032abbf8d15 --- lams_tool_nb/web/authoring/authoring.jsp (.../authoring.jsp) (revision 36580dd1c205ab30b25db66efa5e8499ae5a308e) +++ lams_tool_nb/web/authoring/authoring.jsp (.../authoring.jsp) (revision ebd388504924fe0a06bbf20a06fe0032abbf8d15) @@ -53,7 +53,7 @@ - + @@ -62,7 +62,7 @@ - + @@ -88,7 +88,7 @@ - + teacher @@ -98,11 +98,11 @@