At the root of this is that the value comes up as a string, and if you
don't tell Tapestry otherwise, it stays a string ... but needs to be a
Number for max and min validators.

The translator parameter controls this.  You want to use
"translator:int" (I believe, check the docs). This will convert int
property on the server side to a string, and vice-versa.

On 2/17/06, Jesse Kuhnert <[EMAIL PROTECTED]> wrote:
> I meant more like the sample given in the translator parameter here (
> http://jakarta.apache.org/tapestry/tapestry/ComponentReference/DatePicker.html
> ).
>
>
>
> On 2/17/06, Brian Long <[EMAIL PROTECTED]> wrote:
> >
> > Jesse,
> >
> > do you mean like this?
> >
> > <input jwcid="[EMAIL PROTECTED]" value="translator:ognl:amount"
> > validators="validators:min=15,max=5000" size="10" />
> >
> > Regards, Brian.
> >
> > On 2/17/06, Jesse Kuhnert <[EMAIL PROTECTED]> wrote:
> > > Oh, try adding the translator: binding as well :)
> > >
> > > On 2/17/06, Brian Long <[EMAIL PROTECTED]> wrote:
> > > >
> > > > Jesse,
> > > >
> > > > thanks for the quick reply, but I have bound the value to
> > > > "ognl:amount", which is a BigDecimal (a subclass of Number) used in my
> > > > java class? Is this a step to far for the Compiler/Tapestry framework,
> > > > because if what you say is true, this should have worked.
> > > >
> > > > Brian.
> > > >
> > > > On 2/17/06, Jesse Kuhnert <[EMAIL PROTECTED]> wrote:
> > > > > You need to have you value binding for TextField be either a Numeric
> > > > object
> > > > > type or native numeric value.  That's just the way it is for
> > now...Won't
> > > > be
> > > > > in tap4.1...
> > > > >
> > > > >
> > > > > On 2/17/06, Brian Long <[EMAIL PROTECTED]> wrote:
> > > > > >
> > > > > > Hi guys,
> > > > > >
> > > > > > I've spend this afternoon trying to get the minimum and maximum
> > > > validators
> > > > > > for Tapestry 4.0 to work without success.
> > > > > >
> > > > > > I have a TextField component with an associated FieldLabel
> > component
> > > > onto
> > > > > > which I attach the Min and Max validators :
> > > > > >
> > > > > > <td>
> > > > > > <label jwcid="@FieldLabel" field="component:dummyTextField"
> > > > displayName=
> > > > > > "DummyTextField">DummyTextField</label>
> > > > > > </td>
> > > > > > <td>
> > > > > > <input jwcid="[EMAIL PROTECTED]" value="ognl:amount"
> > > > > > validators="validators:min=15,max=5000"
> > > > > > size="10" />
> > > > > > </td>
> > > > > >
> > > > > > Pretty straightforward, or so you'd think! The problem is that I
> > get a
> > > > > > Class
> > > > > > Cast Exception when I run the application
> > > > > >
> > > > > > >>java.lang.ClassCastException
> > > > > > >>java.lang.String
> > > > > >
> > > > > > in Tapestry and I enter data into this textfield and submit the
> > form.
> > > > The
> > > > > > problem is that the validate method in Min Class (
> > > > > > org.apache.tapestry.form.validator.Min.validate(Min.java:53)), as
> > you
> > > > can
> > > > > > see it's trying to cast the contents of the received
> > > > > > Object to an Number, the problem it that this Object Contains a
> > > > String,
> > > > > > well, we are using a TextField component after all?
> > > > > >
> > > > > > public void validate(IFormComponent field, ValidationMessages
> > > > messages,
> > > > > > Object object)
> > > > > >             throws ValidatorException
> > > > > >     {
> > > > > >         Number value = (Number) object;
> > > > > >
> > > > > >         if (_min > value.doubleValue())
> > > > > >             throw new ValidatorException(buildMessage(messages,
> > > > field),
> > > > > >                     ValidationConstraint.TOO_SMALL);
> > > > > >     }
> > > > > >
> > > > > > Now I know that you can't cast from a String to a
> > > > > > Number,Integer,BigDecimal
> > > > > > etc, but it's an Object we're casting from. I
> > > > > > know that it contains a string, but its a numeric string i.e"123", 
> > > > > > is
> > > > it
> > > > > > that the Min class is at fault here or is it something I'm
> > > > > > doing wrong?
> > > > > >
> > > > > > If Jesse Kuhnert is reading this and has five minutes to deliver
> > the
> > > > > > answer
> > > > > > to my question it would be much appreciated.
> > > > > >
> > > > > > Brian Long.
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > > ---------------------------------------------------------------------
> > > > 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]
> >
> >
>
>


--
Howard M. Lewis Ship
Independent J2EE / Open-Source Java Consultant
Creator, Jakarta Tapestry
Creator, Jakarta HiveMind

Professional Tapestry training, mentoring, support
and project work.  http://howardlewisship.com

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

Reply via email to