Skip to content

fixes BUG-44625: update xercesImpl library

Carlos Aristu requested to merge caristu/openbravo:fix/44625-updateXerces into master

Update xerces library to version 2.12.1. This version still is not compatible with JDK11 as it already has a split package problem with the org.w3c.dom.html. Note that there is a known issue[1] already reported for this library to fix this.

For this reason, apart from updating this library to the latest version we are fixing the JDK11 split package problem by patching the .jar library to remove the org.w3c.dom.html package which indeed only contained a single class: HTMLDOMImplementation.

[1] https://issues.apache.org/jira/browse/XERCESJ-1689

Important Note

The changes of this MR were finally reverted due to a problem with JDK8. See here for more information.

Affected Libraries

The affected libraries according to the maven definition are:

library version status comments
xercesImpl 2.12.1 updated patched to remove split package problem
xml-apis 1.4.01 not included not adding it as it has split package problems

Update tasks

xercesImpl

Try

Revisiting related issues

Issues 40152 and 40163 were fixed by explicitly avoiding the usage of the xercesImpl (org.apache.xerces.jaxp.SAXParserFactoryImpl) parser. This is because it seemed to be slower than parser provided by the JDK (com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl). We should review if the parser provided by the new version of the xercesImpl library is still slower than the one provided by the JDK.

After analyzing it, we are going to keep those changes as it seems the JDK parser is faster:

  • export.database with xercesImpl parser:

xercesImpl parser

  • export.database with JDK parser:

JDK parser

Related MR

Edited by Carlos Aristu

Merge request reports