Ok, originally I tried a numeric translator with what must have been a
bad number format specification.  I revisited my reading in the Kent
Tong book and pulled a different number format specification out, and
presto! It worked.

Thanks -- it's nice to get some Tapestry 4.1 advice on the boards.

Finally, for the nabble and gmane archives:

One solution to numeric validation of TextField in tapestry 4.1 is to
use a validator and translator combination similar to:

<binding name="translator" value="translator:number,pattern=#"/>
<binding name="validators" value="validators:max=2147483647,min=0"/>

Thanks Andreas,

-jason

-----Original Message-----
From: Andreas Andreou [mailto:[EMAIL PROTECTED] 
Sent: Monday, June 09, 2008 7:29 PM
To: Tapestry users
Subject: Re: Tapestry 4.1 Numeric Validation

Are you defining a translator? (like NumberTranslator)

On Mon, Jun 9, 2008 at 11:28 PM,  <[EMAIL PROTECTED]> wrote:
>
> Greetings,
>
> I have a TextField bound to an Integer property.  I want to add
> validation to my TextField such that it will not overflow or cause
> errors when converting to my Integer property.
>
> I've tried:
>
> <binding name="validators" value="validators:max=2147483647,min=0"/>
>
> I get a class cast exception at line 60 of
> org.apache.tapestry.form.validator.Max when I enter a test value of
> 123456789123456789 into the TextField and submit the form.
>
> This doesn't feel like it should be rocket science.  What am I missing
> here?
>
> -jason
>
> ps: Here is my exception
>
> # org.apache.tapestry.form.validator.Max.validate(Max.java:60)
> #
>
org.apache.tapestry.form.ValidatableFieldSupportImpl.validate(Validatabl
> eFieldSupportImpl.java:99)
> #
>
$ValidatableFieldSupport_11a6efd7504.validate($ValidatableFieldSupport_1
> 1a6efd7504.java)
> #
>
org.apache.tapestry.form.TextField.rewindFormComponent(TextField.java:10
> 3)
> #
>
org.apache.tapestry.form.AbstractFormComponent.renderComponent(AbstractF
> ormComponent.java:90)
> #
>
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:724)
> #
>
org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultR
> esponseBuilder.java:187)
> #
>
org.apache.tapestry.form.FormSupportImpl.prerenderField(FormSupportImpl.
> java:797)
> # org.apache.tapestry.form.Form.prerenderField(Form.java:350)
> #
>
org.apache.tapestry.valid.FieldLabel.renderComponent(FieldLabel.java:49)
> #
>
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:724)
> #
>
org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultR
> esponseBuilder.java:187)
> #
>
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:
> 538)
>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>



-- 
Andreas Andreou - [EMAIL PROTECTED] - http://blog.andyhot.gr
Tapestry / Tacos developer
Open Source / JEE Consulting

---------------------------------------------------------------------
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