package org.springmodules.examples.workflow.osworkflow.web; import javax.servlet.http.HttpServletRequest; import org.springmodules.examples.workflow.osworkflow.model.Document; import org.springmodules.examples.workflow.osworkflow.service.DocumentApprovalWorkflow; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.mvc.SimpleFormController; import org.springframework.web.servlet.view.RedirectView; /** * @author robh */ public class EditDocumentForm extends SimpleFormController { private DocumentApprovalWorkflow workflow; public EditDocumentForm() { setFormView("editDocument"); } public void setWorkflow(DocumentApprovalWorkflow workflow) { this.workflow = workflow; } protected Object formBackingObject(HttpServletRequest httpServletRequest) throws Exception { Document doc = workflow.getCurrentDocument(); if (doc == null) { return new Document(); } else { return doc; } } protected ModelAndView onSubmit(Object command) throws Exception { Document document = (Document) command; this.workflow.uploadDocument(document); return new ModelAndView(new RedirectView("../status")); } }