1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| @Controller
@RequestMapping("/projects/{projectRef}/documents/{documentId}")
public class DocumentController extends AbstractProjectController {
//...
@ModelAttribute(ATT_KEY_DOCUMENT)
public AbstractDocument populateDocument(HttpServletRequest servletRequest){
//...
return document;
}
//...
@RequestMapping(value="/edit", method=RequestMethod.POST)
public String processSubmitEditDocumentForm(
ModelMap model,
@ModelAttribute(MODEL_ATTR_CURRENT_PROJECT) Project currentProject,
@ModelAttribute(ATT_KEY_DOCUMENT) SimpleDocument document,
@PathVariable(PATH_VAR_PROJECT_REF) String projectRef,
@PathVariable(PATH_VAR_DOCUMENT_ID) int documentId,
HttpServletRequest servletRequest){
/* Call the service */
try {
Project currentProject = getSessionCurrentProject(servletRequest);
librarySvc.saveDocument(currentProject, document);
} catch(Exception e){
e.printStackTrace();
model.addAttribute(ATT_KEY_MESSAGE_ERROR, e.getMessage());
return VW_PROJECT_DOCUMENT_FORM;
}
return "redirect:/projects/" + projectRef + "/documents/" + documentId;
}
} |
Partager