[英]Session id to the Solr url
我試圖將查詢發送到運行Solr的服務器,如下所示:
String solrServerUrl = //SomeBaseUrl
CommonsHttpSolrServer searchServer = new CommonsHttpSolrServer("http://"+solrServerUrl);
QueryResponse result = searchServer.query(query,SolrRequest.METHOD.POST);
在我發送給Solr服務器的查詢請求中,我按如下方式附加sessionId字符串(出於記錄目的):
String solrServerUrl = SomeBaseUrl.concat("?sessionId");
運行服務器時,出現以下異常:
嵌套的異常是java.lang.RuntimeException:solrj的無效基本URL。 基本網址不得包含參數
有人可以指出我如何將唯一的會話ID轉發到Solr服務器,以便由目標Solr服務器中設置的tomcat閥選擇會話ID以便進行日志記錄?
謝謝
我認為實際的CommonsHttpSolrServer
代碼不可能這樣,無論您使用的是POST還是GET(即使rfeak的注釋看起來不錯)也沒關系。
在CommonsHttpSolrServer
主構造函數中有一個這樣的條件:
if( _baseURL.indexOf( '?' ) >=0 ) {
throw new RuntimeException( "Invalid base url for solrj. The base URL must not contain parameters: "+_baseURL );
}
我會嘗試使用SolrQuery#setParam
方法。 這樣,您也許可以添加其他請求參數,Solr請求處理程序應該忽略這些參數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.