JDK-8016153 : Property http://javax.xml.XMLConstants/property/accessExternalDTD is not recognized.
  • Type: Bug
  • Component: xml
  • Sub-Component: jaxp
  • Affected Version: 7u40,8
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2013-06-07
  • Updated: 2013-12-16
  • Resolved: 2013-06-10
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 b96Fixed
Related Reports
Duplicate :  
Description
While running the jaxp XSLTC tests against a recent jdk 8 I noticed that tests failed - due to the following root exception being thrown:

org.xml.sax.SAXNotRecognizedException: Property
"http://javax.xml.XMLConstants/property/accessExternalDTD"
is not recognized.
    at org.apache.xerces.parsers.AbstractSAXParser.setProperty(Unknown
Source)
    at org.apache.xerces.jaxp.SAXParserImpl.setProperty(Unknown Source)
    at
com.sun.org.apache.xalan.internal.xsltc.compiler.Parser.parse(Parser.java:479) 

The code that throws this exception - in Parser.java - is at line 479 below:

478         final SAXParser parser = factory.newSAXParser();
479                parser.setProperty(XMLConstants.ACCESS_EXTERNAL_DTD,
480                           _xsltc.getProperty(XMLConstants.ACCESS_EXTERNAL_DTD));

This means that application which have a third party JAXP 1.4 implementation in their classpath could potentially encounter a similar problem - if the implementation doesn't recognize the property being set.



Comments
Run the test with Xerces jars on the bootclasspath: java -classpath . -Xbootclasspath/p:./xercesImpl.jar:./xml-apis.jar PluginParser Expected warnings instead of RuntimeException: Warning: org.apache.xerces.parsers.SAXParser: Property 'http://javax.xml.XMLConstants/property/accessExternalDTD' is not recognized. Compiler warnings: WARNING: 'org.apache.xerces.jaxp.SAXParserImpl: Property 'http://javax.xml.XMLConstants/property/accessExternalDTD' is not recognized.' <?xml version="1.0" encoding="UTF-8"?>test passed Number of tests passed: 1 Number of tests failed: 0
11-06-2013

I see the same issue with jdk7u-dev.
07-06-2013