I'm not sure why it's happening, but my validation causes all the data on the .jsp to erase (all integers become 0, all Strings become null) if it comes back with an error.
Here's what I have: Maintain.jsp
I populate the bean with the following, it's in the Action that forwards to maintain.jsp
myDTO is an instance of MaintainDTO, which has the following
It works perfectly when the form first loads, but when validation returns an error, it uses all the default values of MaintainDTO.
Oddly enough, it also calls the reset method of MaintainForm.
Is there anyway I can keep my bean data safe on error?
EDIT: I don't believe I can use Client-side validation either. Part of my validation is a "requiredif" depending on the value of the radio buttons. It gets caught fine with the Server-side, but I can't seem to grab the "requiredif" conditions on switching to client-side. [ June 01, 2004: Message edited by: Karl Beowulph ]
I went through the FAQ. But the case explained there is where there are two actions, one to display and one to process. Hence, after form validation fails, the display action is called to repopulate the bean(by fetching from database) and then the jsp is displayed.
I have a scenario like this, where there is a user registration form with around 10 fields for user input. I want to retain these values, even after a server-side validation failure. Note that there is no specific action before displaying the form.
Joined: Feb 15, 2005
Are you using <html:text> tags for the fields in your JSP without value attributes? If not, that's the problem. If you are, and are still getting this problem, please post relevant portions of your JSP, Action class, ActionForm, and struts-config.xml file.
subject: Server-side validation causing bean data to vanish.