[    ] Please, check this box if you agree with EULA
[ x ] Please, uncheck this box if you don't want to receive notifications


In this case, I would set the first checkbox as required, and leave the
later as optional.

Vote for (1) +1

Best regards,

Bruno Borges
www.brunoborges.com.br
+55 21 76727099

"The glory of great men should always be
measured by the means they have used to
acquire it."
 - Francois de La Rochefoucauld



On Fri, Apr 1, 2011 at 6:46 PM, Maarten Billemont <lhun...@gmail.com> wrote:

>
> On 01 Apr 2011, at 20:56, Daniel Neugebauer wrote:
>
> > BTW an empty string (that's not null) is a string nevertheless. Following
> the argument that an unchecked (false) checkbox should be regarded as valid
> if it is required, an empty string should be accepted as a valid input as
> well.
>
> I don't see why you would think that.  setRequired(true) means, "You must
> provide a value for this component's model".  An empty String and a null
> String mean the same thing (since you cannot input a null String); in both
> instances, it's the user saying: "I have no value for this".  Hence, it
> makes perfect sense that the setRequired(true) fails validation on an empty
> text field.
>
> Contrary to a text field, an unchecked checkbox does not mean: "no value".
>  It means: "Off".  As though I'd write "false" in my text field.
>
> If the web application asks me whether I want to gift-wrap my purchase,
> leaving the box unchecked does not mean I can't or don't want to make up my
> mind.  It means I do not want it gift wrapped.  It's me saying: "No."
>
> > I've just tested it with Wicket 1.4 and actually both of the following
> TextFields validate to a failed state:
> >
> >    TextField tf1 = new TextField("text1", new PropertyModel<String>(this,
> "test1"));
> >    tf1.setRequired(true);
> >    tf1.setConvertEmptyInputStringToNull(false);
> >    form.add(tf1);
> >
> >    TextField tf2 = new TextField("text2", new PropertyModel<String>(this,
> "test2"));
> >    tf2.setRequired(true);
> >    tf2.setConvertEmptyInputStringToNull(true);
> >    form.add(tf2);
> >
>
> Regardless, setConvertEmptyInputStringToNull is not relevant during
> checkRequired.  It is only used by the developer to say, if the user doesn't
> enter any characters, make my model object null instead of an empty string.
>  checkRequired checks Strings.isEmpty(), which is perfectly sensible (ref.
> the first paragraph of this email).
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> For additional commands, e-mail: users-h...@wicket.apache.org
>
>

Reply via email to