It is now a well-known fact on this list that if you are trying to access a property 
using a tag you had better not have an overloaded setter for this property.  In other 
words don't do

  private String foo;
  public String getFoo() { return foo; }
  public void setFoo(String x) { foo = x; }
  public void setFoo(int i) { foo = "" + x; }

Equally well-known is the reason -- "'tis the JavaBeans specification".  So, I went 
looking.  Section 7.1 (Accessor methods) reads

Begin quote ---

Properties are always accessed via method calls on their owning object. For readable 
properties there will be a getter method to read the property value. For writable 
properties there will be a setter method to allow the property value to be updated. 

--- End quote

Section 8.3 ("Design Patterns for Properties") reads

Begin quote ---

By default, we use design patterns to locate properties by looking for methods of the 
form:

public <PropertyType> get<PropertyName>();
public void set<PropertyName>(<PropertyType> a);

If we discover a matching pair of "get<PropertyName>" and "set<PropertyName>" methods 
that take and return the same type, then we regard these methods as defining a 
read-write property whose name will be "<propertyName>".
...

If we find only one of these methods, then we regard it as defining either a read-only 
or a writeonly property called "<propertyName>"

--- End quote

It doesn't say anything about not overloading the accessors.  So, why then do we get 
the error?


Sri


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

Reply via email to