2016-08-15 91 views
0

我想通過使用它們的位置在solr中的圓圈中找到一些對象。這是我想要的查詢http://localhost:8983/solr/col/select?q=%3A&wt=json&indent=true&pt=10.34,12.4&d=5&sfield=location&fq= {!geofilt}Spring Solr地理空間搜索

但我無法爲此創建java代碼。我試過這樣

SimpleQuery query = new SimpleQuery(); 

query.addCriteria(Criteria.where("location").near(new Point(10.34, 12.4), new Distance(5))); 
SolrDocumentList docs = null; 

try { 
    QueryResponse rsp = server.query(query); 
    docs = rsp.getResults(); 
} catch (SolrServerException e) { 
    e.printStackTrace(); 
} catch (IOException e) { 
    e.printStackTrace(); 
} 

但是QueryResponse類不允許這樣做。我能做些什麼纔能有人幫助我?

回答

0

我發現在我的代碼的問題,如果有人想知道新的代碼,我把它放在這裏,

SimpleQuery查詢=新SimpleQuery(); (新點(經緯度),新距離(距離)));

DefaultQueryParser qp = new DefaultQueryParser(); 
    final SolrQuery solrQuery = qp.constructSolrQuery(query); 

    SolrDocumentList docs = null; 

我添加了DefaultQueryParser並解決了問題。