views:

215

answers:

1

I'm using this plugin to allow spatial queries in Solr. I have followed the steps included in the documentation and I've got the spatial queries working fine.

Now I want to retrieve the computed distance. I added these lines in the solrconfig.xml file:

<searchComponent name="geodistance" class="nl.jteam.search.solrext.spatial.GeoDistanceComponent">
    <defaults>
        <str name="distanceField">geo_distance</str>
    </defaults>
</searchComponent>

And I have added the "geodistance" component to the standard request handler:

  <requestHandler name="standard" class="solr.SearchHandler" default="true">
     <lst name="defaults">
       <str name="echoParams">explicit</str>
     </lst>
    <arr name="components">
        <str>query</str>
        <str>geodistance</str>
    </arr>
  </requestHandler>

Then, when I run a query such as "q={!spatial lat=41.641184 long=-0.894032 radius=2 calc=arc unit=km} cafeteria" it works, but only the first time. When I run the same query again I get this error:

GRAVE: java.lang.NullPointerException
    at nl.jteam.search.solrext.spatial.DistanceFieldValueSource.getValues(DistanceFieldValueSource.java:57)
    at nl.jteam.search.solrext.spatial.GeoDistanceComponent.process(GeoDistanceComponent.java:60)
    at org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:195)
    at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:131)
    at org.apache.solr.core.SolrCore.execute(SolrCore.java:1316)

I have no idea where is the error because the first time the query works and I get the computed distance in the "geo_distance" field. But when repeating the query, I get a NullPointerException.

A: 

This problem is fixed in version 1.0-RC5. This version has been released some days ago.

gimenete