0
我是使用SOLR作爲搜索者的新手。我使用標準的SolrServlet作爲搜索器,例如從SOLR搜索中獲得結果
final SolrCore core = SolrCore.getSolrCore();
SolrServletRequest solrReq = new SolrServletRequest(core, request);
SolrQueryResponse solrRsp = new SolrQueryResponse();
try {
SolrRequestHandler handler = core.getRequestHandler(solrReq.getQueryType());
if (handler==null) {
log.warning("Unknown Request Handler '" + solrReq.getQueryType() +"' :" + solrReq);
throw new SolrException(SolrException.ErrorCode.BAD_REQUEST,"Unknown Request Handler '" + solrReq.getQueryType() + "'", true);
}
core.execute(handler, solrReq, solrRsp);
if (solrRsp.getException() == null) {
QueryResponseWriter responseWriter = core.getQueryResponseWriter(solrReq);
response.setContentType(responseWriter.getContentType(solrReq, solrRsp));
PrintWriter out = response.getWriter();
Set<String> fields = new HashSet<String>();
fields.add("content");
solrRsp.setReturnFields(fields);
responseWriter.write(out, solrReq, solrRsp);
我得到了正確的答案,但我要問我是如何得到響應的內容是從作家寫之前?我知道返回是doc,並且我在文檔中有一個字段「content」,但是在生成響應頁面之前。
非常感謝
感謝您的回答,把事情是,有沒有什麼辦法只是爲了獲得該領域的內容?因爲我不想創建一個新的應用程序,只需使用solr本身,並始終使用相同的查詢。我真的,得到SolrServlet的源代碼,並重新映射它的web.xml。我正在進入這個servlet,但不知道如何獲得該字段的價值。 – boban 2011-02-08 04:11:31