繁体   English   中英

未定义字段文本Solrj

undefined field text Solrj

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我试图做一个示例程序来搜索使用solrj。 我的代码在下面基本上我正在尝试搜索一个包含book_name字段中每个位置的单词。 当搜索多个单词时,出现异常

HttpSolrClient solr=new HttpSolrClient("http://localhost:8983/solr/Books");
          System.out.println("here we go");
          SolrQuery query = new SolrQuery();
          query.setQuery("book_name:indian poems");
          QueryResponse response=solr.query(query);
          System.out.println(response.toString());

但它显示一个例外

Exception in thread "main" org.apache.solr.client.solrj.impl.HttpSolrClient$RemoteSolrException: Error from server at http://localhost:8983/solr/Books: undefined field text.

但是,如果我搜索一个单词,它就可以正常工作

1 个回复

可能是text是您的默认搜索字段。

...取决于您的搜索处理程序配置:这可能就您的情况而言:如果您的搜索查询为book_name:indian poems ,solr在book_name字段中搜索单词indian ,并在默认搜索字段中搜索poems -取决于您solr.xml配置。

因此,如果您想在该字段中搜索两个单词,则应该可以执行以下操作:

query.setQuery("book_name:indian book_name:poems");

另一选择是,可设置默认搜索字段book_name由量变到质变的,例如solr.xml或限定qf对于每个查询参数。

我不熟悉solrj ,但是这样的方法可能有效:

query.set("qf", "book_name");

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题
 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM