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 _______________________________________________ josm-dev mailing list [email protected] http://lists.openstreetmap.org/listinfo/josm-dev
