You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@struts.apache.org by David Winterfeldt <dw...@yahoo.com> on 2002/04/01 18:20:19 UTC

Re: PlugIn (Craig)

I didn't see this until just now.  I already made it a
comma delimmited list.  Using a Map might be nice, but
I guess a comma delimmited list will be less confusing
to users since the key serves no purpose currently.

David

--- Martin Cooper <ma...@tumbleweed.com>
wrote:
> I'm speculating wildly here, without looking at the
> code, but... ;-)
> 
> If the <set-property> mechanism makes use of the
> full PropertyUtils scheme,
> then you might be able to do something like this:
> 
> <plug-in
>
className="org.apache.struts.validator.ValidatorPlugIn">
>     <set-property property="pathname(rules)"
>         value="/WEB-INF/validator-rules.xml"/>
>     <set-property property="pathname(validation)"
>         value="/WEB-INF/validation.xml"/>
> </plug-in>
> 
> where 'pathname' is a Map property, and 'rules' and
> 'validation' would be
> keys into that Map.
> 
> Then again, even if it works, this is quite likely
> over-engineering for this
> situation...
> 
> --
> Martin Cooper
> 
> 
> ----- Original Message -----
> From: "David Winterfeldt" <dw...@yahoo.com>
> To: "Struts Developers List"
> <st...@jakarta.apache.org>
> Sent: Saturday, March 30, 2002 6:08 PM
> Subject: Re: PlugIn (Craig)
> 
> 
> > I just wanted to know if this change was on
> purpose.
> > I thought you might have done this on purpose and
> I
> > understand how it breaks the JavaBean model for
> > setters and getters.  I can change it to a comma
> > delimitted list.  I just though having the a
> separate
> > element for each file was cleaner at least on the
> xml
> > side.
> >
> > David
> >
> > --- "Craig R. McClanahan" <cr...@apache.org>
> wrote:
> > >
> > >
> > > On Sat, 30 Mar 2002, David Winterfeldt wrote:
> > >
> > > > Date: Sat, 30 Mar 2002 11:44:43 -0800 (PST)
> > > > From: David Winterfeldt
> <dw...@yahoo.com>
> > > > Reply-To: Struts Developers List
> > > <st...@jakarta.apache.org>
> > > > To: Struts Developers List
> > > <st...@jakarta.apache.org>
> > > > Subject: PlugIn (Craig)
> > > >
> > > > It looks like when you made changes to the
> PlugIn
> > > > Craig that it broke the ValidatorPlugIn. 
> Having
> > > > multiple set-property elements under the
> plug-in
> > > used
> > > > to work, but now it looks like only the last
> one
> > > is
> > > > being kept.  It looks like the addition of
> > > > PlugInSetPropertyRule in ConfigRuleSet broke
> this.
> > > > You probably know the digester better than I
> do if
> > > > this could be changed.  Or point me in the
> right
> > > > direction if you don't have time to do this.
> > > >
> > > > <plug-in
> > > >
> > >
> >
>
className="org.apache.struts.validator.ValidatorPlugIn">
> > > >    <set-property property="pathname"
> > > > value="/WEB-INF/validator-rules.xml"/>
> > > >    <set-property property="pathname"
> > > > value="/WEB-INF/validation.xml"/>
> > > > </plug-in>
> > > >
> > >
> > > The change to the PlugIn configuration did
> indeed
> > > change this, but I'm not
> > > so sure it's a "bad thing" that needs to be
> fixed.
> > >
> > > The basic issue is that PlugInConfig maintains a
> > > simple name-value Map for
> > > the configured properties, which is then
> returned
> > > via getProperties() and
> > > then used as an argument to BeanUtils.populate()
> to
> > > configure the
> > > instantiated PlugIn object.  So, supporting your
> > > syntax above would
> > > require either an API modification, or a change
> to
> > > the contract about what
> > > PlugInConfig.getProperties() returns.
> > >
> > > My discomfort with going ahead and doing this is
> > > based on the fact that it
> > > is somewhat counterintuitive to expect a
> JavaBean
> > > property setter for a
> > > scalar String property to accept and use
> multiple
> > > values when called
> > > mulitple times -- the user of such a bean is
> going
> > > to expect replacement
> > > semantics in this scenario.  It would also not
> be
> > > possible to implement
> > > configuration of this if we extended the DTD to
> > > include a specific PlugIn
> > > (and could therefore use attributes instead of
> > > nested <set-property/>
> > > elements), because XML doesn't allow multiple
> > > attributes with the same
> > > name.
> > >
> > > Wouldn't it be better to use a comma-delimited
> list
> > > (or something like
> > > that) so you can set this with one setPathname()
> > > method?
> > >
> > > > David
> > > >
> > >
> > > Craig
> > >
> > >
> > > --
> > > To unsubscribe, e-mail:
> > >
> <ma...@jakarta.apache.org>
> > > For additional commands, e-mail:
> > > <ma...@jakarta.apache.org>
> > >
> >
> >
> > __________________________________________________
> > Do You Yahoo!?
> > Yahoo! Greetings - send holiday greetings for
> Easter, Passover
> > http://greetings.yahoo.com/
> >
> > --
> > To unsubscribe, e-mail:
> <ma...@jakarta.apache.org>
> > For additional commands, e-mail:
> <ma...@jakarta.apache.org>
> >
> 
> 
> --
> To unsubscribe, e-mail:  
> <ma...@jakarta.apache.org>
> For additional commands, e-mail:
> <ma...@jakarta.apache.org>
> 


__________________________________________________
Do You Yahoo!?
Yahoo! Greetings - send holiday greetings for Easter, Passover
http://greetings.yahoo.com/

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>