On Thu, 12 May 2022, 17:36 Tobias Gerdin, <tobias.ger...@havochvatten.se>
wrote:

> Right, I’ll see if I can come up with that (don’t have a dev environment
> for GeoTools set up yet)
>
>
>
> I also noticed that feature ids do not seem to be returned correctly, i.e.
> mySimpleFeature.getID() always returns “feature.<index in collection>”,
> even though the GeoJSON feature object contains an “id” property. I assume
> this is not by design?
>
>
>
No, that is by design. There is no guarantee that there will be an I'd
attribute for each feature in the schemaless json without reading the whole
file twice. Again if you'd like to add code to take an attribute and use
that as the ID then I'm happy to review it.

Ian

>
> [image: Havochvatten]
>
> *Tobias Gerdin*
>
> Systemutvecklare, Konsult
>
> Enheten för systemutveckling
>
>
>
> *Från:* Ian Turton <ijtur...@gmail.com>
> *Skickat:* den 10 maj 2022 19:58
> *Till:* Tobias Gerdin <tobias.ger...@havochvatten.se>
> *Kopia:* Geotools-Devel list <geotools-devel@lists.sourceforge.net>
> *Ämne:* Re: [Geotools-devel] gt-geojsondatastore GeoJSONReader should
> specify encoding as UTF-8?
>
>
>
> I just assumed that everything was going to be utf8. Happy to review a
> pull request with a test.
>
>
>
> Ian
>
>
>
> On Tue, 10 May 2022, 13:41 Tobias Gerdin, <tobias.ger...@havochvatten.se>
> wrote:
>
> Hello,
>
>
>
> I was puzzled by the behaviour of org.geotools.data.geojson.GeoJSONReader 
> when I was using it to read a feature collection containing non-ascii 
> strings. It complains that the JSON string contains invalid UTF-8 data.
>
>
>
> Due to client mandate I need to develop on a Windows 11 machine. The
> default platform encoding is windows-1252 (for archeological reasons, I
> guess), not UTF8. I noticed that GeoJSONReader uses plain String.getBytes()
> to read the JSON data (
> https://github.com/geotools/geotools/blob/f416fcc3763b2db020c54a9323601fbdd49388e7/modules/unsupported/geojson-core/src/main/java/org/geotools/data/geojson/GeoJSONReader.java#L179
> <https://url11.mailanyone.net/v1/?m=1noU7V-0005wd-6C&i=57e1b682&c=nd0BHN18lI5vvZyhJeZSul8QCsK7EjzqVxFVLS2HSnuWzQCPdExUmmZjNsftJZCHkAw3hTGWYgnnba9mYVF9T5M448udpKgER6NJW5_vcJ_JidCPAKNOxNbTcXoxMOLph80MgSLX4zYdDI2dDTAyWQe8kvVM4seqem0owGeUgtjFOhBMYXOEMCx0TF2tE2MId438iJ0CQM-5D-PsvptlbdX_WOR1OXabMtUzfAlZpiwiD8Q28DHoj52O6Xd7ejb2RGDXkGwTD1OZJL6r7595YAl3MsrjK1v4vBuK_NQ3UCqrbGuoJFYtZOgOEO1oDRDEkjyFsyVvf872aCYSh89sJaV3w191WBq3wmwWO_jqmEdluG5Z3hVXiy9aL7Fxpxa0vsziD2_7TSjc2uvk2kOUVe_Q4WtG8IrXoYa2vfo_CZk>
> ).
>
>
>
> When I change the JVM charset encoding (which needs to be done at startup) 
> using -Dfile.encoding=”UTF-8” my code works, but I rather not have to do 
> this. I am not an expert on JSON but I recall the spec mandates that JSON 
> data is encoded in UTF-8. So I believe that the above linked line should do 
> jsonString.getBytes(StandardCharsets.*UTF_8*) (and in all other locations 
> where JSON data is read).
>
>
>
> Apparently Java is slated to go UTF-8 by default in the future, but until
> then we need to deal with this mess I guess.
>
>
> *Tobias Gerdin*
>
> Systemutvecklare, Konsult
>
> Enheten för systemutveckling
>
>
>
> Gullbergs Strandgata 15, 411 04 Göteborg
>
> Box 11930, SE-404 39 Göteborg
>
> tobias.ger...@havochvatten.se
>
> www.havochvatten.se
>
> Havs- och vattenmyndigheten behandlar dina personuppgifter i enlighet med
> dataskyddsförordningen och myndighetens dataskyddspolicy, läs mer på
> www.havochvatten.se/sa-behandlar-hav-dina-personuppgifter
>
> SwAM processes your personal data in accordance with the General Data
> Protection Regulation (GDPR) and our Data Protection Policy, see
> www.havochvatten.se/sa-behandlar-hav-dina-personuppgifter
>
> _______________________________________________
> GeoTools-Devel mailing list
> GeoTools-Devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/geotools-devel
> <https://url11.mailanyone.net/v1/?m=1noU7V-0005wd-6C&i=57e1b682&c=eSColVShyw2qqIHmNo0FJvvRFmDXQHdhDf1owtnjIFXQKG7glkWUMrZgvan3f0c4bPu23ihiJwC5ZMsGoyGFBismOfkDR-DkQsgwKVFsYfVq4RHbS6tBLsmqndc6kAzOTS5OEmZKJgFdK-UFwuPilR1H89mjHHbePQ7hfx_mwuUHMk2gclP8D2wI6gBKItdEz8_suRy-IvZcW7G9Qnj06AdYxGUfU0sNWmKZfvqqMcfLtS0qZ6yUEmGt11OtvuCD>
>
>
_______________________________________________
GeoTools-Devel mailing list
GeoTools-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to