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...
Any ideas?
Here is my struts-config.xml:
And validation.xml:
Merrill Higginson
Ranch Hand
Joined: Feb 15, 2005
Posts: 4864
posted
0
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.
If you restart the server and use the example failure URL from your first message does it still "skip validation"?
Ludmila Snova
Greenhorn
Joined: Aug 31, 2006
Posts: 20
posted
0
Yes. After restart it still skips validation. Is that possible that I am missing some additional parameters for a session scope?
Ludmila Snova
Greenhorn
Joined: Aug 31, 2006
Posts: 20
posted
0
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".
Ludmila Snova
Greenhorn
Joined: Aug 31, 2006
Posts: 20
posted
0
When I retrieved the bean from the session I used the attribute name. I've changed it to form name and everything works perfectly now.