[mkgmap-dev] NullPointerException & housenumber rules
From WanMil wmgcnfg at web.de on Mon Apr 8 19:25:43 BST 2013
Hi Minko, great test! The problem was caused by the "delete addr:housenumber" action. The housenumber generator collects the nodes and ways containing the housenumber information *before* the style file is processed. But the housenumber itself is parsed *after* the style file is processed. So it kept the nodes with addr:housenumber which was removed by your style file and therefore the parser failed. This case is now catched and you have given me a good hint that I have to improve the housenumber generator to work with the style file house number assignments. Thanks! WanMil > Hi, > > I've got a NullPointerException error when I add the following line to the address rules (inc/address file) > > addr:housenumber=* & addr:street=* & source=BAG {delete addr:housenumber} > > I put this line before the following lines: > > mkgmap:street!=* & addr:street=* { set mkgmap:street='${addr:street}' } > mkgmap:street!=* & addr:housename=* { set mkgmap:street='${addr:housename}' } > > This rule I want to add because I merge so called BAG dataset later to my osm extract, > and I want to filter all BAG data that has already been imported in the NL's until now. > > If you put the line at the end of the address file everything is ok (but probably doesn't do anything). > It happens with the default style as well as my own styles. > > The NPE occurs with mkgmap-r2544, r2560 and mkgmap-overview2 jar files with --x-housenumbers > With mkgmap-r2538 this NPE does not occur. > > One of the tiles that is affected and contains the tag addr:housenumber=* & addr:street=* & source=BAG as well as my merged BAG data is uploaded here: > http://mijndev.openstreetmap.nl/~ligfietser/test/10010033.o5m > > The error message is > > java.lang.NullPointerException > at java.util.regex.Matcher.getTextLength(Unknown Source) > at java.util.regex.Matcher.reset(Unknown Source) > at java.util.regex.Matcher.<init>(Unknown Source) > at java.util.regex.Pattern.matcher(Unknown Source) > at uk.me.parabola.mkgmap.osmstyle.housenumber.HousenumberMatch.parseHousenumber(HousenumberMatch.java:121) > at uk.me.parabola.mkgmap.osmstyle.housenumber.HousenumberMatch.<init>(HousenumberMatch.java:50) > at uk.me.parabola.mkgmap.osmstyle.housenumber.HousenumberGenerator.match(HousenumberGenerator.java:206) > at uk.me.parabola.mkgmap.osmstyle.housenumber.HousenumberGenerator.generate(HousenumberGenerator.java:147) > at uk.me.parabola.mkgmap.osmstyle.StyledConverter.end(StyledConverter.java:342) > at uk.me.parabola.mkgmap.reader.osm.ElementSaver.convert(ElementSaver.java:244) > at uk.me.parabola.mkgmap.reader.osm.o5m.O5mBinMapDataSource.load(O5mBinMapDataSource.java:53) > at uk.me.parabola.mkgmap.reader.osm.OsmMapDataSource.load(OsmMapDataSource.java:115) > at uk.me.parabola.mkgmap.main.MapMaker.loadFromFile(MapMaker.java:144) > at uk.me.parabola.mkgmap.main.MapMaker.makeMap(MapMaker.java:56) > at uk.me.parabola.mkgmap.main.Main$1.call(Main.java:228) > at uk.me.parabola.mkgmap.main.Main$1.call(Main.java:225) > at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) > at java.util.concurrent.FutureTask.run(Unknown Source) > at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) > at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) > at java.lang.Thread.run(Unknown Source) > _______________________________________________ > mkgmap-dev mailing list > mkgmap-dev at lists.mkgmap.org.uk > http://lists.mkgmap.org.uk/mailman/listinfo/mkgmap-dev >
- Previous message: [mkgmap-dev] NullPointerException & housenumber rules
- Next message: [mkgmap-dev] Commit: r2562: Housenumbers: catch the case when a house number tag is removed by the style
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the mkgmap-dev mailing list