Hi, I'm using Struts 2.0.14 and validation annotations. I have a UpdateUserAction class which implements ModelDriven and declares the execute() method with the following :
@Validations( visitorFields = { @VisitorFieldValidator(message="", fieldName="model")} ) My model is a User class which has a number of @RequiredStringValidators, etc. When I test the functionality I login to my app as a user with all it's fields populated (ie a valid user). I then update a dropdown box in the Update User jsp to the 'Select' value, to invalidate this property (declared with a @RequiredStringValidator). Sure enough, when I submit the form, I get a field error telling me this is a required field. So far so good. However when I then correct that field and resubmit, I still get the error! I've added debug code to the prepare() method of the UpdateUserAction and it shows that the previous field error is still present when I submit the corrected form. This is strange because my understanding is that field errors should get cleared between requests, and the validation framework shouldn't fire until after the prepare() method has fired. So why am I seeing validation errors in the prepare method? And why aren't they clearing? What's even more frustrating is that I've downloaded the source code for the xworks 2.0.7 package, and attached as source in Eclipse Galileo, but then I can't set breakpoints in any of the xwork codebase to step through, as each time I try and open an xwork java file, it takes me to the .class file instead. Can anyone shed light on my problems as I can't see what I'm doing wrong? Thanks in advance, Murray