[josm-dev] Special Character Problem
Brett Henderson
brett at bretth.com
Sun Aug 16 22:56:14 BST 2009
Stephan wrote:
> Sebastian Waschik wrote:
>
>> $ javac SaxTest2.java && java -cp "$PWD":/usr/share/java/xercesImpl.jar SaxTest2 broken.osm
>> String values (4): d800 df34 d800 df37
>>
>
>
> I don't think josm is including a private copy of xerces. So it will use
> the one provided by sun.
>
Yep, Osmosis is doing the same thing.
> Using -Djaxp.debug=1 it prints the used factory. Here it's
> com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl
>
> and that one seams to have a bug in the implementation.
>
> It's this version:
> java.exe com.sun.org.apache.xerces.internal.impl.Version
> Xerces-J 2.6.2
>
Perhaps this version of Xerces supports JDK 1.4 which doesn't have the
new "code point" functions providing full UTF-16 support.
> Supplying the xerceximpl.jar in the classpath causes this version to be
> used:
> Xerces-J 2.9.1
>
Nice! Yes, that fixes the problem. I've added Xerces 2.9.1 to the
growing list of osmosis dependencies ...
>
> I suggest filing a bug report on sun and until fixed require a recent
> xerces implementation available on the host.
>
Given the prevalence of ancient JDKs installed on people's PCs I suspect
this fix will need to remain in JOSM/Osmosis for a while yet.
I've never raised a Java bug report before. I'll check it out if nobody
beats me to it.
Brett
More information about the josm-dev
mailing list