I looked to see if Solr/Spatial4j supports a different GeoJSON parser,
namely the one in JTS.  It doesn't, sorry.  "PRs/patches welcome" of course.

On Fri, Oct 18, 2024 at 5:06 AM Volk, Beatrycze <
beatrycze.v...@slub-dresden.de> wrote:

> Hi,
>
>
>
> thank you very much for the answer!
>
>
>
> Unfortunately, changing the order of elements in the JSON object is not an
> option for us, as they are provided by external clients and we have no
> influence on the file contents.
>
>
>
> Do you know maybe how should look exactly our fieldType configuration to
> use suggested work-around with different GeoJSON Reader?
>
>
>
> Best regards,
>
> Beatrycze
>
>
>
> *Von:* David Smiley <dsmi...@apache.org>
> *Gesendet:* Dienstag, 15. Oktober 2024 00:00
> *An:* dev@solr.apache.org; Volk, Beatrycze <beatrycze.v...@slub-dresden.de
> >
> *Betreff:* Re: Problem with GeoJSON field in SOLR 8.11.1
>
>
>
> Hi,
>
>
>
> This is a known limitation, inside a dependency of Solr's:
> https://github.com/locationtech/spatial4j/issues/227
>
> But as indicated in that issue, you might be able to work-around by using
> the JTS spatial context, which uses a different GeoJSON Reader.  I think,
> anyway; it's been a long time.
>
>
>
> ~ David
>
>
>
> On Mon, Oct 14, 2024 at 8:58 AM Volk, Beatrycze <
> beatrycze.v...@slub-dresden.de> wrote:
>
> Hi,
>
> I am not sure if this is the right mailing list, but I have a problem with
> the indexing of the GeoJSON. It is not exactly the configuration problem,
> but more question about the implementation.
>
> I try to index this GeoJSON document:
> {
>    "type":"FeatureCollection",
>    "features":[
>       {
>          "type":"Feature",
>          "properties":{
>
>          },
>          "geometry":{
>             "coordinates":[
>                [
>                   [
>                      12.979074171786522,
>                      51.35455355187656
>                   ],
>                   [
>                      12.742678165549023,
>                      51.30187234125975
>                   ],
>                   [
>                      12.614561448882142,
>                      51.23774698707524
>                   ],
>                   [
>                      12.610428651570203,
>                      51.195810322507896
>                   ],
>                   [
>                      12.946838352754384,
>                      51.19322038765756
>                   ],
>                   [
>                      13.019575585442539,
>                      51.24136935014246
>                   ],
>                   [
>                      13.07247539103443,
>                      51.26361475158893
>                   ],
>                   [
>                      13.193979632002566,
>                      51.26154586591673
>                   ],
>                   [
>                      13.190673394153208,
>                      51.30445616429853
>                   ],
>                   [
>                      12.980727290711684,
>                      51.31840629529299
>                   ],
>                   [
>                      12.979074171786522,
>                      51.35455355187656
>                   ]
>                ]
>             ],
>             "type":"Polygon"
>          }
>       }
>    ]
> }
>
> My field is defined as follow:
> <fieldType name="geojson" class="solr.SpatialRecursivePrefixTreeFieldType"
> spatialContextFactory="Geo3D" geo="true" planetModel="WGS84"
> format="GeoJSON" />
>
> The error which I am getting:
> Apache Solr threw exception: "Solr HTTP error: Bad Request (400)
> {
>   "responseHeader":{
>     "status":400,
>     "QTime":2305},
>   "error":{
>     "metadata":[
>       "error-class","org.apache.solr.common.SolrException",
>       "root-error-class","java.text.ParseException"],
>     "msg":"ERROR: [doc=20452uuid-6613d542-b888-44b3-8496-91283a8267e2]
> Error adding field
> 'geom'='{\"type\":\"Feature\",\"properties\":{},\"geometry\":{\"coordinates\":[[[12.979074171786522,51.35455355187656],[12.742678165549023,51.30187234125975],[12.614561448882142,51.23774698707524],[12.610428651570203,51.195810322507896],[12.946838352754384,51.19322038765756],[13.019575585442539,51.24136935014246],[13.07247539103443,51.26361475158893],[13.193979632002566,51.26154586591673],[13.190673394153208,51.30445616429853],[12.980727290711684,51.31840629529299],[12.979074171786522,51.35455355187656]]],\"type\":\"Polygon\"}}'
> msg=Unable to parse shape given formats \"lat,lon\", \"x y\" or as GeoJSON
> because java.text.ParseException: Unable to make shape type: Feature input:
> {\"type\":\"Feature\",\"properties\":{},\"geometry\":{\"coordinates\":[[[12.979074171786522,51.35455355187656],[12.742678165549023,51.30187234125975],[12.614561448882142,51.23774698707524],[12.610428651570203,51.195810322507896],[12.946838352754384,51.19322038765756],[13.019575585442539,51.24136935014246],[13.07247539103443,51.26361475158893],[13.193979632002566,51.26154586591673],[13.190673394153208,51.30445616429853],[12.980727290711684,51.31840629529299],[12.979074171786522,51.35455355187656]]],\"type\":\"Polygon\"}}",
>     "code":400}}
>
> Basically after some tests I was able to confirm that problem is caused by
> the ordering of type elements in JSON. If the type "Polygon" is placed as
> first then the document is indexed correctly. But the ordering of the
> elements should not be important here, as the GeoJSON validator accepts the
> order of the fields from the above presented JSON. The documents are
> generated automatically by the software to generate GeoJSON.
>
> I would like to ask if maybe this problem was already addressed in some of
> the newer SOLR version. If not, are there are some plans to adjust it? Or
> maybe is there some other class which accepts GeoJSON in the form we want
> to provide it.
>
> I would be very grateful for any help on this topic.
>
> Best regards,
> Beatrycze Volk
> --
> Beatrycze Volk
> Softwareentwicklerin
>
> Sächsische Landesbibliothek -
> Staats- und Universitätsbibliothek Dresden (SLUB)
> 01054 Dresden
> Abt. Informationstechnologie (IT)
> Referat Digitale Präsentation (2.1)
> Besucheradresse: Zellescher Weg 18, 01069 Dresden
> Tel.: +49 351/4677319
> E-Mail: beatrycze.v...@slub-dresden.de<mailto:
> beatrycze.v...@slub-dresden.de>
> https://www.slub-dresden.de<https://www.slub-dresden.de/>
>
>

Reply via email to