[Design of JBossXB] - Re: annotations on properties declared in interfaces
by scott.stark@jboss.org
The problem is in the AbstractBeanInfoFactory.getMethods(ClassInfo classInfo). The ClassInfo.getDeclaredMethods returns 4 methods:
[ReflectMethodInfoImpl@691177{name=setProperty[ReflectClassInfoImpl(a)1f99eea{name=java.lang.String}] return=void}, ReflectMethodInfoImpl@13043d2{name=setProperty[ReflectClassInfoImpl(a)1b4c1d7{name=java.lang.Object}] return=void}, ReflectMethodInfoImpl@221e9e{name=getProperty[] return=ReflectClassInfoImpl(a)1b4c1d7{name=java.lang.Object}}, ReflectMethodInfoImpl@83e1e{name=getProperty[] return=ReflectClassInfoImpl(a)1f99eea{name=java.lang.String}}
but the result set only contains 3:
[ReflectMethodInfoImpl@1e184cb{name=getProperty[] return=ReflectClassInfoImpl(a)bb494b{name=java.lang.Object}}, ReflectMethodInfoImpl@d1e233{name=setProperty[ReflectClassInfoImpl(a)bb494b{name=java.lang.Object}] return=void}, ReflectMethodInfoImpl@7976c1{name=setProperty[ReflectClassInfoImpl(a)13043d2{name=java.lang.String}] return=void}]
The String getProperty() method was dropped as it was seen to be equals to the Object getProperty method. The MethodInfoImpl equals/hashCode need to consider name, parameters and return type.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4099432#4099432
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4099432
16 years, 11 months