Index: lams_central/src/java/org/lamsfoundation/lams/web/action/SignupAction.java =================================================================== RCS file: /usr/local/cvsroot/lams_central/src/java/org/lamsfoundation/lams/web/action/SignupAction.java,v diff -u -r1.6 -r1.7 --- lams_central/src/java/org/lamsfoundation/lams/web/action/SignupAction.java 8 Apr 2014 15:27:08 -0000 1.6 +++ lams_central/src/java/org/lamsfoundation/lams/web/action/SignupAction.java 4 Dec 2014 23:42:57 -0000 1.7 @@ -34,6 +34,8 @@ * @struts:action-forward name="signup" path=".signup" * @struts:action-forward name="index" path="/" * @struts:action-forward name="success" path=".successfulSignup" + * @struts:action-forward name="error" path=".error" + * @struts:action-forward name="message" path=".message" */ public class SignupAction extends Action { @@ -49,16 +51,22 @@ signupService = (ISignupService) wac.getBean("signupService"); } - String context = WebUtil.readStrParam(request, "context", true); - if (StringUtils.isNotBlank(context)) { - SignupOrganisation signupOrganisation = signupService.getSignupOrganisation(context); - request.setAttribute("signupOrganisation", signupOrganisation); - } - DynaActionForm signupForm = (DynaActionForm) form; String method = WebUtil.readStrParam(request, "method", true); - if (signupForm.get("submitted") == null || !((Boolean) signupForm.get("submitted"))) { + + String context = WebUtil.readStrParam(request, "context", true); + SignupOrganisation signupOrganisation = null; + if (StringUtils.isNotBlank(context)) { + signupOrganisation = signupService.getSignupOrganisation(context); + request.setAttribute("signupOrganisation", signupOrganisation); + } + + if (signupOrganisation == null) { + request.setAttribute("messageKey", "No such signup page exists"); + return mapping.findForward("message"); + } + // no context and unsubmitted form means it's the initial request return mapping.findForward("signup"); } else if (StringUtils.equals(method, "register")) {