I have a web app that uses STRUTS(1.1). For some reason when I changed the scope in the action tag from request to session my validation stopped working.
It looks like it's ignored.
I expect validation to pass with URL: www.site.com/ShowFile.do?lang=EN&doc=4&number=148&fileName=fileName.doc And fail with URL: www.site.com/ShowFile.do?lang=EN But it does not fail...
I'd suggest that in your form bean definition you set an initial value of blank to all the properties. Otherwise, if the form bean is in session scope, it retains the values last entered and therefore will pass validation even when no new value is entered.
Thank you for response. Unfortunately, it did not help. The initial values have been assigned to blanks.And, it looks like the validation is not triggered at all. It goes further to the action class, instead of going to the error page.
I've done some additional testing. And notice, that validation is not triggered then I have attribute="docForm" in the action tag:
When I've removed that attribute, validation is executed properly. But I need it, in order to retrieve bean from a session in the code... Is there any other way to identify form bean?
The form bean is named by the "name" attribute. If I remember correctly the "attribute" attribute is for when the form bean is named something other than the "name" attribute--I've never actually seen anybody use this.
Can you explain a bit more what you're trying to accomplish? I'm just not sure it's necessary to use "attribute".