Nested properties with DynaActionForms actually require you to nest objects. :) Using a property name like "iterationLength.time" would be like saying "getIterationLength().getTime()", and this is what BeanUtils would try to do.
Hubert On 6/7/05, Laurie Harper <[EMAIL PROTECTED]> wrote: > I'm probably missing something really obvious but I've been fiddling > about with this for a while now. Maybe someone can spot what I'm doing > wrong... > > I'm using DynaActionForms in my Struts app and I'd like to be able to > reference a property like this: > > <html:text property="iterationLength.time"/> > > I tried a form declaration like this: > > <form name="..."> > <form-property name="iterationLength.time" type="java.lang.String"/> > </form> > > but I get an error during request processing that 'iterationLength' is > not a valid property. So then I tried: > > <form name="..."> > <form-property name="prop1" type="java.util.HashMap"/> > </form> > > Struts appears to be trying to cope with this: > > DEBUG [http8080-Processor24] org.apache.commons.beanutils.BeanUtils - > setProperty(DynaActionForm[dynaClass=ProjectEdit,startDate=,owner=,mode=,description=,iterationLength={},endDate=,status=,name=,doSave=], > iterationLength.time, [1]) > DEBUG [http8080-Processor24] org.apache.commons.beanutils.BeanUtils - > Target bean = {} > DEBUG [http8080-Processor24] org.apache.commons.beanutils.BeanUtils - > Target name = time > > So it's getting the empty map as the target bean on which to set a > property 'time'. But when I fetch the map from the form in my action, > it's empty. > > Is there a way to do this? The reason I want to be able to write the > property as "iterationLength.time", rather than collapsing it to > 'iterationLengthTime' or something is for consistency with when I'm > accesing the same property in other beans which aren't dynamically > generated. > > Thanks, > > L. > > > --------------------------------------------------------------------- > 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]