/** * Setup a GET method form. * * @param id id of the controller * @param model data model * @return form continuation */ @RequestMapping(method = RequestMethod.GET) public String setupForm(@PathVariable("id") String id, Model model) { SpaceController controller = controllerRepository.getSpaceControllerById(id); model.addAttribute("spacecontroller", SpaceControllerUtils.toTemplate(controller)); model.addAttribute("id", id); addNeededEntities(model); addGlobalModelItems(model); return "spacecontroller/SpaceControllerEdit"; }
/** * Process form submit request. * * @param id id of the controller * @param template data template to process * @param result binding result * @param status the session status * @return form continuation */ @RequestMapping(method = {RequestMethod.PUT, RequestMethod.POST}) public String processSubmit( @PathVariable("id") String id, @ModelAttribute("spacecontroller") SpaceController template, BindingResult result, SessionStatus status, Model model) { new SpaceControllerValidator().validate(template, result); if (result.hasErrors()) { addNeededEntities(model); return "spacecontroller/SpaceControllerEdit"; } else { SpaceController controller = controllerRepository.getSpaceControllerById(id); SpaceControllerUtils.copy(template, controller); controllerRepository.saveSpaceController(controller); status.setComplete(); return "redirect:/spacecontroller/" + controller.getId() + "/view.html"; } }