JDK-7192955 : Introspector overide PropertyDescriptor for generic type field defined in super class
  • Type: Bug
  • Component: client-libs
  • Sub-Component: java.beans
  • Affected Version: 7
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • OS: other
  • CPU: other
  • Submitted: 2012-08-21
  • Updated: 2013-06-26
  • Resolved: 2012-09-11
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 7 JDK 8
7u40Fixed 8 b56Fixed
Related Reports
Duplicate :  
Description
This is a SUNBUG for 100210: https://bugs.openjdk.java.net/show_bug.cgi?id=100210

When you have a field with generic type where the generic is an interface
Introspector overide the PropertyDescriptor into the method
addPropertyDescriptor

In my test case the field genericObject in BaseObject is supose to be bound.

testcase.zip attached to this report.


Test output in JDK7 build 14:

% javac -g *.java
% java -showversion MainTest
java version "1.7.0-ea"
Java(TM) SE Runtime Environment (build 1.7.0-ea-b14)
Java HotSpot(TM) Tiered VM (build 1.7.0-ea-b14, mixed mode)

class is bound: false
genericObject is bound: true
test is bound: true


Test output in JDK7 build 15:

% javac -g *.java
% java -showversion MainTest
java version "1.7.0-ea"
Java(TM) SE Runtime Environment (build 1.7.0-ea-b15)
Java HotSpot(TM) Tiered VM (build 1.7.0-ea-b15, mixed mode)

class is bound: false
genericObject is bound: false
test is bound: true

Comments
EVALUATION Generic properties are not bound even if the class declares the addPropertyChangeListener method.
24-08-2012