I would like to discuss a potential solution the a classloading issue that we encountered in bug [1].
In summary, we use the Batik 1.7 SVG toolkit by using the bundles [2] and [3] from the latest Orbit-S.
Bundle [3] imports the package “org.w3c.dom” without specifying a version constraint and bundle [2] exports the package “org.w3c.dom.events” in version 3.0.0. There’s also a package “org.w3c.dom.events” in the JRE. Due
to the missing package constraint in [3], the event classes are always loaded from the JRE. However, Batik 1.7 requires the event classes loaded from [2] which leads to a Linkage Error.
Our proposal is to create a new bundle that contains both packages in [2] and [3]. In this case, the event classes will be loaded inside the new bundle and not from the JRE anymore.
Furthermore, [2] contains part of Batik SVG toolkit 1.7 whereas [3] contains Batik SVG toolkit 1.6 sources. The new bundle shouldn’t mix the different versioned Batik SVG sources. We might consider to create 2 bundles,
one with Batik SVG 1.6 sources and one with SVG 1.7 sources.
Any recommendations or objections?
[1]
https://bugs.eclipse.org/bugs/show_bug.cgi?id=421553
[2] org.w3c.dom.events_3.0.0.draft20060413_v201105210656
[3] org.w3c.dom.svg_1.1.0.v201011041433