【发布时间】:2012-03-31 20:20:11
【问题描述】:
我想从 SolrNet 获取此查询返回的信息:
http://localhost:8983/solr/terms?terms.fl=Title&terms.sort=index&terms.limit=10000&terms.mincount=10&version=2.2
Solr 支持指定术语参数,但我不知道如何检索术语信息。执行查询转到选择查询处理程序,这会引发错误。这是我目前所拥有的:
var solr = ServiceLocator.Current.GetInstance<ISolrOperations<ProductAdvertisementWidget>>();
int termLimit = 10000;
int minCount = 10;
var termParameters = new TermsParameters("Title");
termParameters.MinCount = minCount;
termParameters.Limit = termLimit;
termParameters.Sort = TermsSort.Index;
var options = new QueryOptions()
{
Terms = termParameters,
Rows = 0
};
var queryOptions = new QueryOptions();
queryOptions.Terms = termParameters;
int lastResultCount = termLimit;
IEnumerable<KeyValuePair<string, int>> terms =
solr.Query(new SolrQuery(""), options).Terms.FirstOrDefault(
x=>x.Field == SolrFieldMappings.Name).Terms;
SolrNet 将其翻译成这个查询,但失败了:
http://localhost:8983/solr/select?q=&terms.fl=Title&terms.sort=index&terms.limit=10000&terms.mincount=10&version=2.2
错误信息是:
HTTP 错误 500
访问 /solr/select 时出现问题。原因:
nulljava.io.StringReader 处的 java.lang.NullPointerException。(未知 来源)在 org.apache.lucene.queryParser.QueryParser.parse(QueryParser.java:203) 在 org.apache.solr.search.LuceneQParser.parse(LuceneQParserPlugin.java:80) 在 org.apache.solr.search.QParser.getQuery(QParser.java:142) 在 org.apache.solr.handler.component.QueryComponent.prepare(QueryComponent.java:81) 在 org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:173) 在 org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:129) 在 org.apache.solr.core.SolrCore.execute(SolrCore.java:1368) 在 org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:356) 在 org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:252) 在 org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212) 在 org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399) 在 org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) 在 org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) 在 org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766) 在 org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450) 在 org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230) 在 org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) 在 org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) 在 org.mortbay.jetty.Server.handle(Server.java:326) 在 org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542) 在 org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:928) 在 org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549) 在 org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212) 在 org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) 在 org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228) 在 org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582
)
【问题讨论】:
-
请发布错误信息。
标签: solrnet