我正在尝试执行查询
http://192.168.1.101:7070/solr/locationList_shard3_replica1/select?q=*:*&fq={!geofilt}&sfield=geometry&pt=19.7599,74.8091&d=50&sort=geodist()%20desc
它与solr仪表板完美配合,但是当我尝试从solrj错误
时我的代码是
query.addFilterQuery("{!geofilt}&sfield=geometry&pt="
+ address.getGeometry() + "&d=1000000&sort=geodist() desc");
错误缺少空间请求的sfield
答案 0 :(得分:1)
传递给addFilterQuery
的字符串是filter参数。为了清楚起见,传递给方法addFilterQuery
的字符串将完全编码。尝试以这种方式重构查询:
query.add("fq", "{!geofilt}");
query.add("sfield", "geometry");
query.add("pt", address.getGeometry());
query.add("sort", "geodist() desc");