【发布时间】:2012-07-09 22:59:15
【问题描述】:
我正在尝试使用 HttpClient 查询我的本地 Solr 服务器,但我无法弄清楚为什么没有将参数添加到 GET 调用中。
我的代码是:
HttpRequestBase request = new HttpGet("http://localhost:8080/solr/select");
HttpParams params = new BasicHttpParams();
params.setParameter("q", query);
params.setParameter("start", String.valueOf(start));
params.setParameter("rows", String.valueOf(rows));
request.setParams(params);
HttpClient httpClient = new DefaultHttpClient();
HttpResponse response = httpClient.execute(request);
HttpEntity entity = response.getEntity();
InputStream is = entity.getContent();
return stringToStreamConversion(is); //500 error, NullPointerException, response is empty
我已经尝试退回几件东西,希望能看到我会得到什么,并试图找出问题所在。我终于意识到,我回来的时候才找回http://localhost:8080/solr/select
return request.getURI().toURL().toString();
我无法弄清楚为什么没有添加参数。如果我这样做了
return request.getQuery();
我一无所获……有什么想法吗?提前感谢您的帮助!
【问题讨论】:
-
我强烈推荐使用 Solrj 库:wiki.apache.org/solr/Solrj
-
我最初使用的是 Solrj 库,但在尝试将 SolrDocumentList 转换为 json 字符串时遇到问题,这就是我采用这种方法的原因
标签: apache solr httpclient response