The reflection API has been steadily improved with each JVM release, and
you may find that the performance difference is now neglible. In fact,
weighed against loading scads of custom code just to populate values, it
may be more performant.

http://husted.com/struts/resources/performant.htm

box wrote:
> I see the point, You are right it makes a lot of sense. But the behind the
> scene matter of my question was the performance reason.
> I have to copy all the properties of ActionForm to appropriate business
> logic object. The clean way of doing this is using the reflection API, which
> is rather slow.
> 
> regards Wojtek
> 
> ----- Original Message -----
> From: "Craig R. McClanahan" <[EMAIL PROTECTED]>
> To: "Struts Developers List" <[EMAIL PROTECTED]>; "box"
> <[EMAIL PROTECTED]>
> Sent: Sunday, November 25, 2001 7:14 AM
> Subject: Re: General model question ?
> 
> >
> >
> > On Thu, 22 Nov 2001, box wrote:
> >
> > > Date: Thu, 22 Nov 2001 19:36:25 +0100
> > > From: box <[EMAIL PROTECTED]>
> > > Reply-To: Struts Developers List <[EMAIL PROTECTED]>,
> > >      box <[EMAIL PROTECTED]>
> > > To: [EMAIL PROTECTED]
> > > Subject: General model question ?
> > >
> > > Hi everybody,
> > >
> > >  I am new to struts, but I find them very usefull.
> > >
> > >  There is one question that bothers me.
> > >
> > >  Wy is ActionForm a class not an interface ?
> > >
> > >  I have got my own application data model and I would just need  to
> > > implement
> > >  the ActionForm to update/input the data via html forms.
> > >
> > >  But it's not possible - I must inherit the struts structure, so I have
> to
> > >  create ActionForm with get, set methods and after all copy all
> properties
> > >  between my data model and the corresponding ActionForm.
> > >
> > >  Am I missing something ?
> > >
> >
> > ActionForm is a class in order to *prevent* exactly the behavior you
> > propose :-).
> >
> > The purpose of an ActionForm is to contain the server-side state of the
> > input fields, for the following reasons:
> >
> > * So that you can validate them (you don't want invalid data
> >   being scribbled into your application data objects by Struts's
> >   automatic bean population)
> >
> > * So that you can reproduce the user's input data in case of an
> >   error such as an invalid integer (you would use a String in the
> >   ActionForm for an EJB property that is an "int").
> >
> > * So that your application data objects can be reused in non-Struts
> >   contexts (otherwise, they would always require struts.jar to be around).
> >
> > You *really* don't want to modify anything in your application data model
> > until *after* validation has succeeded.  That's why the Struts design
> > pattern is to do this in an Action, by copying the appropriate values from
> > the ActionForm into your application data objects, performing any data
> > conversions that are necessary.  Making ActionForm a class instead of an
> > interface forces you to do the right thing.
> >
> > >  regards
> > >
> > >  Wojtek
> > >
> >
> > Craig McClanahan
> >
> >
> > --
> > To unsubscribe, e-mail:
> <mailto:[EMAIL PROTECTED]>
> > For additional commands, e-mail:
> <mailto:[EMAIL PROTECTED]>
> >
> >
> > --
> > Myslisz o otworzeniu wlasnego sklepu internetowego?
> > A moze o wynajeciu stoiska w wirtualnym pasazu?
> > W Centrum e-biznesu mozesz miec jedno i drugie. Juz od 290 zl za rok.
> > Wybierz: e-witryne lub e-sklep. http://handel.getin.pl/
> >
> >
> 
> 
> --
> Myslisz o otworzeniu wlasnego sklepu internetowego?
> A moze o wynajeciu stoiska w wirtualnym pasazu?
> W Centrum e-biznesu mozesz miec jedno i drugie. Juz od 290 zl za rok.
> Wybierz: e-witryne lub e-sklep. http://handel.getin.pl/
> 
> 
> --
> To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

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

Reply via email to