[ https://issues.apache.org/jira/browse/WICKET-2624?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Juergen Donnerstag resolved WICKET-2624. ---------------------------------------- Resolution: Fixed Fix Version/s: 1.5-M1 1.4.6 Assignee: Juergen Donnerstag > MethodGetAndSet.setValue uses wrong source to determine which type to convert > to when there's no setter > ------------------------------------------------------------------------------------------------------- > > Key: WICKET-2624 > URL: https://issues.apache.org/jira/browse/WICKET-2624 > Project: Wicket > Issue Type: Bug > Components: wicket > Affects Versions: 1.4.4 > Reporter: Marat Radchenko > Assignee: Juergen Donnerstag > Fix For: 1.4.6, 1.5-M1 > > Attachments: PropertyResolverTest.java > > > MethodGetAndSet.setValue uses wrong source to determine which type to convert > to when there's no setter, resulting in exceptions like this: > org.apache.wicket.WicketRuntimeException: Error setting field: private int > PropertyResolverTest$DirectFieldSetWithDifferentTypeThanGetter.value on > object: > propertyresolvertest$directfieldsetwithdifferenttypethanget...@396477d9 > at > org.apache.wicket.util.lang.PropertyResolver$MethodGetAndSet.setValue(PropertyResolver.java:1150) > at > org.apache.wicket.util.lang.PropertyResolver$ObjectAndGetSetter.setValue(PropertyResolver.java:588) > at > org.apache.wicket.util.lang.PropertyResolver.setValue(PropertyResolver.java:136) > at > PropertyResolverTest.testDirectFieldSetWithDifferentTypeThanGetter(PropertyResolverTest.java:12) > Bug is located in: > converted = converter.convert(value, getMethod.getReturnType()); > Instead, it should read: > converted = converter.convert(value, type); > Testcase attached. > Additional thoughts: > if (setMethod != null) > { > type = getMethod.getReturnType(); > } > This is really confusing (we check setMethod presence but get type from > getMethod). Luckily, this works as expected because in > MethodGetAndSet.findSetter only methods with same (or superclass) type as > getter are returned. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.