RFR: 8308152: PropertyDescriptor should work with overridden generic getter method
Alexander Zvegintsev
azvegint at openjdk.org
Thu Jun 8 00:01:48 UTC 2023
On Tue, 30 May 2023 19:13:42 GMT, Sergey Bylokhov <serb at openjdk.org> wrote:
> Description of the bug, copied from https://github.com/openjdk/jdk/pull/7190
>
>
>> In jdk 9 we started to sort the list of methods for each class for two reasons:
>> 1. We had a number of bugs which state that our JavaBeans randomly does not work, examples: JDK-6807471[1] , JDK-6788525[2], the reason was that the order of methods from Class.getMethods() is not specified.
>> 2. We tried to sort methods so the more specific returns types come first, this was done because our logic for selecting the correct method did not work properly.
>>
>> The second issue above was fixed by the separate change [JDK-8196373](https://bugs.openjdk.java.net/browse/JDK-8196373) so now we only need to sort the list of methods in any order and do not care about return types.
>>
>
> Unfortunatly it was found that we have two code paths to create a PropertyDescriptor, one of them is used by the `Introspector.getBeanInfo` and was patched by the [JDK-8196373](https://bugs.openjdk.java.net/browse/JDK-8196373) and another when the PropertyDescriptor is created directly and it still affected by that bug.
>
> The code added by this patch is the same we already use in PropertyInfo.java, see
> https://github.com/openjdk/jdk/blob/master/src/java.desktop/share/classes/com/sun/beans/introspect/PropertyInfo.java#L81
Marked as reviewed by azvegint (Reviewer).
-------------
PR Review: https://git.openjdk.org/jdk/pull/14228#pullrequestreview-1468749398
More information about the client-libs-dev
mailing list