package org.annotationmvc.web; import java.text.*; import javax.servlet.http.*; import org.annotationmvc.service.*; import org.annotationmvc.vo.*; import org.apache.commons.logging.*; import org.springframework.beans.propertyeditors.*; import org.springframework.web.bind.*; import org.springframework.web.servlet.*; import org.springframework.web.servlet.mvc.*; import org.springframework.web.servlet.view.*; import javax.servlet.ServletException; import org.springframework.validation.BindException; public class MyObjectFormController extends SimpleFormController { protected final Log logger = LogFactory.getLog(getClass()); private MyObjectService mos; public MyObjectService getMos() { return mos; } public void setMos(MyObjectService mos) { this.mos = mos; } public ModelAndView onSubmit(HttpServletRequest request, HttpServletResponse response, Object cmd, BindException errors) throws Exception { logger.debug( "Entering MyObjectFormController handleRequest method ...."); MyObjectVO myObjectVO = (MyObjectVO) cmd; if (null != request.getParameter("delete")) { System.out.println("[Delete] button pressed ... "); mos.removeMyObjectVO(myObjectVO); } else if (null != request.getParameter("update")) { mos.updateMyObjectVO(myObjectVO); System.out.println("[Update] button pressed ... "); } else if (null != request.getParameter("add")) { mos.insertMyObjectVO(myObjectVO); System.out.println("[Add] button pressed ... "); } return new ModelAndView(new RedirectView(getSuccessView())); } protected Object formBackingObject(HttpServletRequest request) throws ServletException { String id = request.getParameter("id"); if (null != id && !id.equals("")) { return mos.findMyObjectById(Integer.parseInt(id)); } return new MyObjectVO(); } }