Index: lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/NbLearnerAction.java =================================================================== diff -u -r7a4ea3e5ff301874a107ffd2230e9db4aaf31e2d -rb07f9cf2c3a7e59cb64a4b917c89e7252cfdb769 --- lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/NbLearnerAction.java (.../NbLearnerAction.java) (revision 7a4ea3e5ff301874a107ffd2230e9db4aaf31e2d) +++ lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/NbLearnerAction.java (.../NbLearnerAction.java) (revision b07f9cf2c3a7e59cb64a4b917c89e7252cfdb769) @@ -33,7 +33,8 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -import org.apache.struts.actions.LookupDispatchAction; +//import org.apache.struts.actions.LookupDispatchAction; +import org.lamsfoundation.lams.web.action.LamsLookupDispatchAction; import org.apache.log4j.Logger; @@ -49,6 +50,7 @@ import org.lamsfoundation.lams.learning.service.ILearnerService; import org.lamsfoundation.lams.learning.service.LearnerServiceProxy; import org.lamsfoundation.lams.usermanagement.User; +import org.lamsfoundation.lams.tool.noticeboard.util.NbWebUtil; /** @@ -58,10 +60,14 @@ * * @struts:action path="/learner" name="NbLearnerForm" scope="session" type="org.lamsfoundation.lams.tool.noticeboard.web.NbLearnerAction" * input=".learnerContent" validate="false" parameter="method" + * @struts.action-exception key="error.exception.NbApplication" scope="request" + * type="org.lamsfoundation.lams.tool.noticeboard.NbApplicationException" + * path=".error" + * handler="org.lamsfoundation.lams.tool.noticeboard.web.CustomStrutsExceptionHandler" * @struts:action-forward name="displayLearnerContent" path=".learnerContent" * ----------------XDoclet Tags-------------------- */ -public class NbLearnerAction extends LookupDispatchAction { +public class NbLearnerAction extends LamsLookupDispatchAction { static Logger logger = Logger.getLogger(NbLearnerAction.class.getName()); @@ -81,11 +87,18 @@ * @param response * @return */ - public ActionForward finish(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { + public ActionForward finish(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws NbApplicationException { NbLearnerForm learnerForm = (NbLearnerForm)form; - Long toolSessionID = learnerForm.getToolSessionId(); - Long userID = learnerForm.getUserId(); + Long toolSessionID = NbWebUtil.convertToLong(learnerForm.getToolSessionId()); + Long userID = NbWebUtil.convertToLong(learnerForm.getUserId()); + + if (toolSessionID == null || userID == null) + { + String error = "Unable to continue. The parameters tool session id or user id is missing"; + logger.error(error); + throw new NbApplicationException(error); + } INoticeboardService nbService = NoticeboardServiceProxy.getNbService(getServlet().getServletContext()); /** TODO: learnerServiceProxy causes an exception, fix this up later */ // ILearnerService learnerService = LearnerServiceProxy.getLearnerService(getServlet().getServletContext()); Index: lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/NbMonitoringAction.java =================================================================== diff -u -rd2ddd825c4d9997a885984ce49fdb5a3b41abb86 -rb07f9cf2c3a7e59cb64a4b917c89e7252cfdb769 --- lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/NbMonitoringAction.java (.../NbMonitoringAction.java) (revision d2ddd825c4d9997a885984ce49fdb5a3b41abb86) +++ lams_tool_nb/src/java/org/lamsfoundation/lams/tool/noticeboard/web/NbMonitoringAction.java (.../NbMonitoringAction.java) (revision b07f9cf2c3a7e59cb64a4b917c89e7252cfdb769) @@ -37,7 +37,8 @@ import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; -import org.apache.struts.actions.LookupDispatchAction; +//import org.apache.struts.actions.LookupDispatchAction; +import org.lamsfoundation.lams.web.action.LamsLookupDispatchAction; import org.lamsfoundation.lams.tool.noticeboard.NoticeboardConstants; import org.lamsfoundation.lams.tool.noticeboard.service.INoticeboardService; import org.lamsfoundation.lams.tool.noticeboard.service.NoticeboardServiceProxy; @@ -57,10 +58,14 @@ * * @struts:action path="/monitoring" name="NbMonitoringForm" scope="session" type="org.lamsfoundation.lams.tool.noticeboard.web.NbMonitoringAction" * input=".monitoringContent" validate="false" parameter="method" + * @struts.action-exception key="error.exception.NbApplication" scope="request" + * type="org.lamsfoundation.lams.tool.noticeboard.NbApplicationException" + * path=".error" + * handler="org.lamsfoundation.lams.tool.noticeboard.web.CustomStrutsExceptionHandler" * @struts:action-forward name="monitorPage" path=".monitoringContent" * ----------------XDoclet Tags-------------------- */ -public class NbMonitoringAction extends LookupDispatchAction { +public class NbMonitoringAction extends LamsLookupDispatchAction { static Logger logger = Logger.getLogger(NbMonitoringAction.class.getName());