Nope, actually, it is bean-utils that is at fault here (something all
struts developers should be accustomed to saying - IMO, bean-utils is
the single weakest component in struts).

According to the javabeans specification
(http://java.sun.com/products/javabeans/docs/spec.html), indexed
properties should look like this:

1) void setter(int index, PropertyType value); // indexed setter
2) PropertyType getter(int index); // indexed getter
3) void setter(PropertyType values[]); // array setter
4) PropertyType[] getter(); // array getter

But the last time I looked, bean-utils never used the indexed
getter/setter methods (#1 or #2) - in fact, it never even called the
array setter (#3). Instead, it got a reference to the array by calling
method #4, and set the elements in it directly.

Larry

On Mon, 24 Jan 2005 15:39:44 -0700, Wendy Smoak <[EMAIL PROTECTED]> wrote:
> From: "Will Stranathan" <[EMAIL PROTECTED]>
> 
> > Well, I understand the way HTTP is working there, it just SEEMS to be
> > that having the additional method (setBar(int, String)) confused
> > BeanUtils or something - because removing those methods (making no
> > other changes) cleared the problem up.
> 
> Your original code violated the JavaBeans specification-- you're only
> allowed one pair of get/set methods, and the types have to match. (Boolean
> properties have slightly different rules.)  Any additional methods will, as
> you found out, confuse the introspection process.

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

Reply via email to