Project

Profile

Help

Bug #4474

closed

JDK9: Illegal reflective access by net.sf.saxon.java.JavaPlatform to constructor com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl()

Added by Michael Kay about 4 years ago. Updated about 4 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Internals
Sprint/Milestone:
-
Start date:
2020-03-04
Due date:
% Done:

100%

Estimated time:
Legacy ID:
Applies to branch:
9.9, trunk
Fix Committed on Branch:
9.9, trunk
Fixed in Maintenance Release:
Platforms:

Description

To support parse-xml-fragment(), Saxon attempts to instantiate the default JDK parser

com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl

(For background, see bugs 4127 and 4253)

Under JDK9, with its module system, this access may generate warnings or errors.

JDK9 allows the default SAX parser to be accessed with the new method SAXParserFactory.newDefaultInstance(), so we should use this method if it is available. We can achieve this easily enough with reflexive code that continues to work under JDK8.

Actions #1

Updated by Michael Kay about 4 years ago

  • Status changed from New to Resolved

Patched to call SAXParserFactory.newDefaultInstance() (reflexively) if available.

Actions #2

Updated by O'Neil Delpratt about 4 years ago

  • Status changed from Resolved to Closed
  • % Done changed from 0 to 100
  • Fixed in Maintenance Release 9.9.1.7 added

Patch applied in the 9.9.1.7 maintenance release.

Please register to edit this issue

Also available in: Atom PDF