JDK-8061466 : RELAX NG API visible but not accessible
  • Type: Bug
  • Component: xml
  • Sub-Component: jaxb
  • Affected Version: 9
  • Priority: P2
  • Status: Closed
  • Resolution: Fixed
  • Submitted: 2014-10-20
  • Updated: 2017-05-17
  • Resolved: 2015-10-02
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 b85Fixed
Related Reports
Relates :  
Description
JAXB has a copy of RELAX NG in tools.jar. This means that types in the package org.relaxng.datatype are visible when tools.jar is on the class path.

When we move to the modular image then these classes will be defined by the boot or extensions loader (as they are in module javax.xml.bind) and so will be visible even with a JRE image.

When we add module boundaries then these APIs will become inaccessible as they will not be exported by the jdk.xml.bind  module.

This bug asks that the inclusion of the RELAX NG API be re-examined. If it is required (by JAXB tools) then it would be better to move the classes into a JDK-internal package.