【发布时间】:2011-12-13 06:15:32
【问题描述】:
我正在尝试向运行 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: Invalid base url for solrj。基本 URL 不得包含参数
有人能指出我如何将唯一的会话 ID 转发到 Solr 服务器,以便目标 Solr 服务器中设置的 tomcat 阀门选择会话 ID 以进行日志记录吗?
谢谢
【问题讨论】:
-
不是一个答案,而是一个观察。您正在向 POST 上的 URL 添加参数,而不是 GET。 Valve 会在 POST 上查看 URL 参数吗?
-
@rfreak - 我的印象是 Tomcat 阀门应该能够处理任何类型的请求。 GET/POST 应该不是问题。不过我可能错了。
标签: java solr solrj jsessionid