JDK-8131754 : AquaTreeUI.getCollapsedIcon() issue reported in java beans tests with a modular build
  • Type: Bug
  • Component: client-libs
  • Sub-Component: java.beans
  • Affected Version: 9-repo-jigsaw
  • Priority: P2
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2015-07-17
  • Updated: 2017-05-17
  • Resolved: 2015-12-03
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 9
9 b100Fixed
Related Reports
Blocks :  
Relates :  
Description
Two java beans tests fail on OS X (10.10 in my case) with NoSuchMethodException  with modular build only and not with a regular JDK. 
Method in question is in AquaTreeUI and  it is public.


RULE java/beans/XMLEncoder/Test4631471.java Exception java.lang.NoSuchMethodException: <unbound>=AquaTreeUI.getCollapsedIcon();
RULE java/beans/XMLEncoder/javax_swing_JTree.java Exception java.lang.NoSuchMethodException: <unbound>=AquaTreeUI.getCollapsedIcon();
Comments
http://cr.openjdk.java.net/~serb/8131754/webrev.00/ http://mail.openjdk.java.net/pipermail/beans-dev/2015-November/000207.html
09-11-2015

Is in progress, Sergey is working on in. this week will be completed. (by Nov 6th)
02-11-2015

It will be fixed after the JEP. The necessary part of the JEP is under review: http://mail.openjdk.java.net/pipermail/beans-dev/2015-September/000189.html
21-09-2015

Sergey, what is a due date for this (as well jep codebase push date) ?
21-09-2015

In theory we can easily fix this bug, we need to add the @Transient tag to setUI/getUI methods of JComponent. But in practice we have an amazing bug: the jdk9 uses the precompiled beaninfo files, and these files are generated during the build on the boot jdk, which is jdk8, which of course has no any additional tags which I added to jdk9. And I cannot simply replace the jdk8 to jdk9, because generation of these beaninfo files requires a compiled java.desktop module(this generator access the swing classes via reflection), and java.destop module requires a beaninfo files. I think that the new javabeans jep should solve this issue, because this jep support generation of beaninfo classes on the fly in runtime.
10-09-2015

This is a general issue, which was uncovered in the jake build. The XMLEncoder tries to encode ui delegate which is platform specific information.
12-08-2015