protected ModelAndView onSubmit( HttpServletRequest request, HttpServletResponse response, Object command, BindException errors) throws Exception { AddPermission addPermission = (AddPermission) command; PrincipalSid sid = new PrincipalSid(addPermission.getRecipient()); Permission permission = BasePermission.buildFromMask(addPermission.getPermission().intValue()); try { contactManager.addPermission(addPermission.getContact(), sid, permission); } catch (DataAccessException existingPermission) { existingPermission.printStackTrace(); errors.rejectValue("recipient", "err.recipientExistsForContact", "Addition failure."); return showForm(request, response, errors); } return new ModelAndView(new RedirectView(getSuccessView())); }