JDK-8320354 : Release Note: Add a Built-in Catalog to JDK XML Module
  • Type: Sub-task
  • Component: xml
  • Sub-Component: jaxp
  • Affected Version: 22
  • Priority: P4
  • Status: Resolved
  • Resolution: Delivered
  • Submitted: 2023-11-17
  • Updated: 2024-02-15
  • Resolved: 2023-11-22
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 22
22Resolved
Description
A JDK built-in catalog is introduced to host <a href="https://www.oracle.com/technetwork/xsd/1664222.html">DTDs defined by the Java Platform</a>. The JDK creates a <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.xml/javax/xml/catalog/CatalogResolver.html">CatalogResolver</a> based on the built-in catalog when needed to function as the default external resource resolver. When no user-defined resolvers are registered, a JDK XML processor will fall back to the default CatalogResolver and will attempt to resolve an external reference before making a connection to fetch it. The fall-back also takes place if a user-defined resolver exists but allows the process to continue when unable to resolve the resource.

If the default CatalogResolver is unable to locate a resource, it will signal the XML processors to continue processing, or skip the resource, or throw a CatalogException. The action it takes is configured with the `jdk.xml.jdkcatalog.resolve` property. The new property can be set on factory APIs, as a Java system property, or in the JAXP Configuration File. The new property affects all XML processors uniformly.

For further information, see the <a href="https://docs.oracle.com/en/java/javase/22/docs/api/java.xml/module-summary.html#JDKCATALOG">JDK built-in Catalog</a> section of the `java.xml` module summary.