struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Irwan Nurwandi" <irwan.nurwa...@gmail.com>
Subject Re: pb using validator with struts1.2.9
Date Wed, 26 Jul 2006 09:28:40 GMT
Dear Jeremy ..

what do you mean with "should I "hide" fields rather than "not
display" fields.. ??",
 "hide" and "not display" are the same things isn't it :-)

if you're expect the validwhen to manage hide and unhide HTML object,
validwhen couldn't do such a thing.

=====
Taken from struts doc :
 [Since Struts 1.2.0] A frequent requirement in validation design is
to validate one field against another (for example, if you have asked
the user to type in a password twice for confirmation, to make sure
that the values match.) In addition, there are fields in a form that
may only be required if other fields have certain values. The
validwhen  validation rule is designed to handle these cases.
=====

Otherwise, to manage hide and unhide HTML Object which is generated by
Struts, you can create your own javascript function to hide/unhide the
object, and then call the function manually using OnChange property in
your select tag.

Regards
Irwan

> I think now it's time to explain you clearly what I'm trying to do.
>
> I've got a select tag wich determine if some fieds appear or not.
> "if select value > 1, some input:text tags appears, and there aren't present
> is select value=1."
>
> Maybe should I "hide" fields rather than "not display" fields.. ??
>
> thx
>
>
>
>
>
>
>
> On 7/25/06, Adam Gordon <adam.gordon@readytalk.com> wrote:
> >
> > Jeremy-
> >
> > Ok, sanity-check time.  Make sure your field names are all spelled
> > correctly.  Also, are any errors being output to the form?  I had errors
> > displaying and it turned out that the validator was doing exactly what I
> > was asking it to do and the problem was that I just didn't understand
> > the "validwhen" validation rule.
> >
> > I've found that overriding toString() on my form bean and having it dump
> > the contents of all the fields is an excellent way to see with what
> > values the bean is being populated.  You can then call
> > System.out.println(this) (or use a logger) in your bean's validate(...)
> > method to see what values your bean has.  Make sure the subscriptionType
> > is set to the value you expect.
> >
> > Also, your rule basically reads now as "the field enterpriseName is
> > valid when the subscription type is greater than or equal to 1."   So,
> > e.g., if your subscription type is a drop down list that only contains
> > the values 1,2,3,4, the enterpriseName field will always be valid.
> >
> > Give that a whirl and let us know.
> >
> > cheers,
> >
> > -Adam
> >
> > Jeremy Jardin wrote:
> > > -Adam,
> > >
> > > I've just changed my conf like that :
> > >
> > >            <field property="enterpriseName"
> > >                depends="validwhen">
> > >                <arg0 key="error.inscription.entreprise.nom" />
> > >                <var>
> > >                    <var-name>test</var-name>
> > >                    <var-value>(subscriptionType>=1)</var-value>
> > >                </var>
> > >            </field>
> > >
> > > but, it still does not work..
> > >
> > > On 7/25/06, Adam Gordon <adam.gordon@readytalk.com> wrote:
> > >>
> > >> Jeremy-
> > >>
> > >> At first glance, I think you need to modify your parenthesis.  Per the
> > >> Validation docs at
> > >> http://struts.apache.org/1.2.9/userGuide/dev_validator.html, only two
> > >> items may be joined with "and" or "or."  I don't know if that means
> > > you
> > >> can only have a max of two items or a max of two items per parends...
> > >>
> > >> Secondly, I had a bunch of problems with "validwhen" and finally
> > >> resorted to implementing my own solution in my ValidatorForm's
> > >> validate(...) method because it appears that 'validwhen' is rather
> > >> basic.  It basically says "field A is valid when..."  In my
> > > experience,
> > >> "validwhen" doesn't chain well with other validation rules.
> > >>
> > >> Alternatively, you could rewrite your rules to say:
> > > ((subscriptionType
> > >> >= 2) and (subscriptionType &lt;= 4)).  Note the &lt;, you'll
get
> > >> errors if you use a < character.  I assume you validate that
> > >> subscriptionType is an integer on [1,4].  Also, you don't need quotes
> > >> around the numbers.  Struts is smart enough to try numbers first and
> > >> then if that doesn't work, it resorts to Strings.  Besides, I'm not
> > > sure
> > >> the functionality you want is to compare Strings using inequalities...
> > >>
> > >> Hope this helps.
> > >>
> > >> -Adam
> > >>
> > >> Jeremy Jardin wrote:
> > >> > Hi,
> > >> >
> > >> > I'm trying to use struts plugin validator to check a big form.. and
> > > it
> > >> > works
> > >> > well.. but I've a little pb with validwhen constraint;
> > >> >
> > >> > I've written something like this :
> > >> >
> > >> >            <field property="enterpriseName"
> > >> >                depends="validwhen">
> > >> >                <arg0 key="error.inscription.entreprise.nom" />
> > >> >                <var>
> > >> >                    <var-name>test</var-name>
> > >> >                    <var-value>((subscriptionType=="2")or
> > >> > (subscriptionType=="3")or(subscriptionType=="4"))</var-value>
> > >> >                </var>
> > >> >            </field>
> > >> >
> > >> > I just want to check the field 'enterpriseName' is not empty when
I
> > >> > submit,
> > >> > but only if my select field 'subscriptionType" is more than 1. (2,3
> > > or4)
> > >> >
> > >> > It does not work.
> > >> >
> > >> > why ??
> > >> >
> > >> >
> > >>
> > >> ---------------------------------------------------------------------
> > >> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> > >> For additional commands, e-mail: user-help@struts.apache.org
> > >>
> > >>
> > >
> > >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> > For additional commands, e-mail: user-help@struts.apache.org
> >
> >
>
>
> --
> ~ jebmail ~
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Mime
View raw message