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]
