Win a copy of Functional Reactive Programming this week in the Other Languages forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

struts integer validator

 
Jimmy Soh
Greenhorn
Posts: 5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
What is the simplest way to validate that a user's input is an integer if the underlying data type in the form is int?
My problem is that I have a text field for entering integer values in which a user might accidentally type letters or floating point numbers. Unfortunately, it seems the form automatically sets the value to 0 if the input is invalid. Thus, the struts validator sees 0 instead of the user's actual input, which might have been "afd.04964."
 
Edward He
Greenhorn
Posts: 7
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I have the exactly the same problem. Is there anyone have any ideas? Struts don't validate request incomings but the populated forms.
 
Ergin Er
Ranch Hand
Posts: 60
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
the simplest (depens on your preference):

validation.xml:
add a mask dependency that checks on [0-9] (regex)

if you're more comfortable with java in stead of xml:
add validate() method in the actionform and there you can check if the variable does have chars in it.

In both cases you do need to activate the validator framework by setting it in the struts-config.

If you don't want to use validator framework:
throw error in the action when your variable is null or 0
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic