Thank you, Kishore. That sounds like what is happening, but I lacked the
in-depth knowledge of how Struts works to figure it out. This helps me
understand a lot.
I will try the LazyDynaBean[] method. 

Jason Jones
Ann Arbor VAMC (CIO)
2215 Fuller Rd.
Ann Arbor, MI 48105
734-769-7100 x5387


-----Original Message-----
From: Kishore Senji [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, September 21, 2005 9:11 PM
To: Struts Users Mailing List
Subject: Re: Validating Indexed Properties

> public class DevicePartMeasurementTO implements Serializable {
>
>
>
> private int devicePartsTypeID;
>
> private String devicePartsType;
>
> private float prWave;
>
> private float impedance;
>
> private String threshold;
>
>
>
> public DevicePartMeasurementTO()
>
> {
>
>
>
> }
>
> ....getters and setters
>
>
I think the behaviour that you are seeing is because the ConvertUtils uses
default values when it cannot convert the strings that come in the request
to the corresponding bean properties. So, once the validator gets to see the
properties to validate they are initialized to their corresponding primitive
defaults (0.0f etc) and so the validation is successful.

You could just use Strings as all your properties or have a new bean (a
LazyDynaBean for eg) referenced from your form like so

<form-property name="deviceMsmnts" type="
org.apache.commons.beanutils.LazyDynaBean[]"/>

and using BeanUtils.copyProperties() you could convert each LazyDynaBean
individually to the corresponding DTO in the action class before business
processing.

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

Reply via email to