Matt, I compared everything that I thought was relevant, and it still didn't work. I blew away everything and restarted from the archetype, and it's fine. I suspect I must have messed something up between running the archetype and starting the tutorial. Thanks for your patience with this appfuse newbie. Waldo Matt Raible wrote: --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]Have you tried comparing your code to the completed tutorial? http://appfuse-demos.googlecode.com/files/appfuse-demos-2.0.1.tar.gzThanks, Matt On 3/9/08, Waldo Rochow <[EMAIL PROTECTED]> wrote:I have added this work-around (read "hack") to get the unit tests to work, and to get the page flow behaving properly. === CODE from PersonFormController.java === public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception { if(request.getMethod().equalsIgnoreCase("post")){ return onSubmit(request, response, formBackingObject(request), new BindException()); } else { return super.handleRequest(request, response); } } But in doing so, I see that nothing is getting saved to the database. There is no log message from the GenericManager, so I added the following to my PersonFormController.onSubmit(). === CODE from PersonFormController.java === if (request.getParameter("delete") != null) { personManager.remove(person.getId()); saveMessage(request, getText("person.deleted", locale)); } else { * log.debug("The original person is: " + person.toString());* * Person updatedPerson = personManager.save(person); log.debug("The updated person is: " + updatedPerson.toString()); * String key = (isNew) ? "person.added" : "person.updated"; saveMessage(request, getText(key, locale)); if (!isNew) { success = "redirect:personform.html?id=" + person.getId(); } } It produced the following log even though I changed Matts first name to Mathiew (sorry ;-). === LOG of transition from: person form -> persons list === [cbeyond] DEBUG [btpool0-1] PersonFormController.onSubmit(59) | entering 'onSubmit' method... [cbeyond] DEBUG [btpool0-1] PersonFormController.onSubmit(71) | The original person is: [EMAIL PROTECTED],firstName=Matt,lastName=Raible] [cbeyond] DEBUG [btpool0-1] PersonFormController.onSubmit(73) | The updated person is: [EMAIL PROTECTED],firstName=Matt,lastName=Raible] I don't know if this is related, but I suspect it is. Thanks again, Waldo Waldo Rochow wrote: > I'm hoping that someone can help me. I have been running through the > spring tutorial with hibernate, and all was going well until the > PersonFormController. > > The behavior that I'm seeing is that when editing a person, I click on > the save button and get redirected to the persons list. The changes > that have been made are not persisted, and the log doesn't display the > "entering 'onSubmit' method..." log message. > > What bothers me is the following line from the logs since my class > doesn't implement that method, I am assuming that one of the parents > is trying to handle the request. > > PersonFormController.processFormSubmission(266) | No errors -> > processing submit > > I have Googled for hours, and not found anything like this, so I am at > my wits end. > > Some relevant code and log snippets follow. > > Thanks in advance, > Waldo > > > === CODE from personform.jsp === > ... > <form:form commandName="person" method="POST" action="" > id="personForm"> > <form:errors path="*" cssClass="error" element="div"/> > <form:hidden path="id"/> > <ul> > <li> > <appfuse:label styleClass="desc" key="person.firstName"/> > <form:errors path="firstName" cssClass="fieldError"/> > <form:input path="firstName" id="firstName" cssClass="text > medium"/> > </li> > > <li> > <appfuse:label styleClass="desc" key="person.lastName"/> > <form:errors path="lastName" cssClass="fieldError"/> > <form:input path="lastName" id="lastName" cssClass="text medium"/> > </li> > > <li class="buttonBar bottom"> > <input type="submit" class="button" name="save" > value="<fmt:message key="button.save"/>"/> > <c:if test="${not empty person.id}"> > <input type="submit" class="button" name="delete" > > value="<fmt:message key="button.delete"/>" /> > </c:if> > <input type="submit" class="button" name="cancel" > value="<fmt:message key="button.cancel"/>"/> > </li> > </ul> > </form:form> > ... > > === CODE from PersonFormController.java === > public class PersonFormController extends BaseFormController { > > ... > > public ModelAndView onSubmit(HttpServletRequest request, > HttpServletResponse response, Object > command, > BindException errors) > throws Exception { > log.debug("entering 'onSubmit' method..."); > ... > } > > ... > } > > === LOG of transition from: persons list -> person form -> persons > list === > [cbeyond] DEBUG [btpool0-1] PersonFormController.showNewForm(337) | > Displaying new form > [cbeyond] DEBUG [btpool0-2] > PersonFormController.processFormSubmission(266) | No errors -> > processing submit > [cbeyond] DEBUG [btpool0-1] PersonController.handleRequest(31) | > entering 'handleRequest' method... > > > > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] |
- [appfuse-user] tutorial-spring: PersonFormController - form p... Waldo Rochow
- Re: [appfuse-user] tutorial-spring: PersonFormController... Waldo Rochow
- Re: [appfuse-user] tutorial-spring: PersonFormContro... Waldo Rochow
- Re: [appfuse-user] tutorial-spring: PersonFormContro... Matt Raible
- Re: [appfuse-user] tutorial-spring: PersonFormContro... Matt Raible
- Re: [appfuse-user] tutorial-spring: PersonFormContro... Matt Raible
- Re: [appfuse-user] tutorial-spring: PersonFormCo... Waldo Rochow
- Re: [appfuse-user] tutorial-spring: PersonFormController... Matt Raible