On 2/28/07, Niall Pemberton <[EMAIL PROTECTED]> wrote:
This question relates to Shale's validation rather than commons
validator - you're more likely to get an answer asking this on their
user list.


Actually, Niall, there are C-V related issues here.  Even in the US
locale, the Commons Validator default formatting methods will convert
an integer 1234 into string "1,234", but the C-V validator routine
will not accept that as a valid integer string on a subsequent form
post -- it only wants "1234".  I haven't had time to nail down the
precise boundaries of the problem, but there is definitely a C-V
related problem here.  It should generate string values that are
accepted by a subsequent validation (especially in the case where the
user did not actually change the value).

Niall


Craig

On 2/28/07, Hasan Turksoy <[EMAIL PROTECTED]> wrote:
> hi all,
>
> i am using an intRange validator together with an integer converter for my
> input field.. code is like below;
> <h:inputtext value="..myIntField" ...>
>  <f:converter converterId="org.apache.shale.converter.Integer" />
>  <s:commonsvalidator type="intRange" min="5" max="100" ... />
>  <h:inputtext />
>
> this means; my field will be validated for the 5<->100 range with an integer
> value which will be converted by the shale's "
> org.apache.shale.validator.converter.IntegerConverter" class...
>
> issue:
> if i enter values less than 1000; validator(GenericValidator class) is
> working as expected... But, if i enter values more than 1000, then, it gives
> a validation error saying my field's value(1234) must be integer!
> This is because when i entered a value like 1234, converter converts my
> value to string (validator-rules need string value to make integer
> validation) as "123.4".. so, it puts a thousand separator while converting
> my value to string... in this case, GenericTypeValidator's "formatInt"
> method fails while creating a new Integer from this string... It's trying to
> do like;
> "return new Integer("123.4");"...
>
> suggestion:
> why this "formatInt(String value)" method of GenericTypeValidator is NOT
> using overridden "formatInt(String value, Locale locale);" method with null
> locale parameter?.. However, if it did like that; it will use the default
> locale while parsing my string to integer... and it will work as expected...
>
> best regards,
>
> hasan...

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to