JDK-8089509 : Javadoc of custom controls shows links to impl_* methods of its JavaFX superclasses
  • Type: Bug
  • Component: javafx
  • Sub-Component: other
  • Affected Version: 8u11
  • Priority: P3
  • Status: Closed
  • Resolution: Won't Fix
  • Submitted: 2014-08-01
  • Updated: 2016-06-20
  • Resolved: 2016-06-20
Related Reports
Relates :  
Relates :  
Description
Create a custom control by extending the Control class.  For example:

public class CustomControl extends javafx.scene.control.Control
{
}

Now run: javadoc CustomControl.java -link http://docs.oracle.com/javase/8/javafx/api/

You will notice that the generated CustomControl.html file links to impl_* methods of Control, Region, Parent and Node.

Developers of control libraries would not want their documentation cluttered with links to impl_* methods (which are already broken since JavaFX does not document them). 
Comments
After JDK-8158659 was implemented we no longer have any methods in our public API that are annotated with @treatAsPrivate so this is no longer an issue for JDK 9. We do not plan to address this for JDK 8u.
20-06-2016

This isn't a controls issue but is rather an issue with the javadoc tool itself. Note that you should specify the "-javafx" option to enable "@treatAsPrivate" to be recognized (and for full property support), but this won't help in your case since that annotation is only used by javadoc and isn't part of the compiled class file. Also, it looks like even if you specify "-link LOCATION-TO-JAVAFX-DOCS" it doesn't use any information from the linked docs regarding omitted methods. We will likely need to file an enhancement request to allow the javadoc tool to somehow recognize such "hidden" non-public methods.
01-08-2014

Btw, JDK-8037423 is slightly different, in that it is talking about generating javadoc for the superclass and subclass at the same time. I could imagine that the fix might be related, but depending on how JDK-8037423 is solved, it may not solve this issue. So I think I will file a new bug and link them as related.
01-08-2014

Thanks, that saves me from filing a duplicate bug. I will transfer the information from this bug to there.
01-08-2014

Looks like JDK-8037423 is already reported for this: https://bugs.openjdk.java.net/browse/JDK-8037423
01-08-2014

I can reproduce this by subclassing any JavaFX class with a method that is annotated with @treatAsPrivate (e.g., Rectangle, Region, Image).
01-08-2014

I will leave this issue open and targeted to JDK 9 until we decide what to do with it.
01-08-2014

Related to RT-38150.
01-08-2014