package .webapp.action; import java.util.Locale; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.commons.lang.StringUtils; import .webapp.action.BaseFormController; import .; import .service.Manager; import org.springframework.validation.BindException; import org.springframework.web.servlet.ModelAndView; public class FormController extends BaseFormController { private Manager manager = null; public void setManager(Manager manager) { this.manager = manager; } public FormController() { setCommandName(""); setCommandClass(.class); } protected Object formBackingObject(HttpServletRequest request) throws Exception { String = request.getParameter(""); = null; if (!StringUtils.isEmpty()) { = () manager.getObject(.class, new ()); } else { = new (); } return ; } public ModelAndView onSubmit(HttpServletRequest request, HttpServletResponse response, Object command, BindException errors) throws Exception { if (log.isDebugEnabled()) { log.debug("entering 'onSubmit' method..."); } = () command; boolean isNew = (.() == null); Locale locale = request.getLocale(); if (request.getParameter("delete") != null) { manager.removeObject(.class, .()); saveMessage(request, getText(".deleted", locale)); } else { manager.saveObject(); String key = (isNew) ? ".added" : ".updated"; saveMessage(request, getText(key, locale)); if (!isNew) { return new ModelAndView("redirect:edit.html", "", .()); } } return new ModelAndView(getSuccessView()); } }