java - 解决方案 "Undefined field text"

标签 java tomcat solr

我最近将我的 solr 实例从 1.4 升级到了 3.6。但是,现在每当我更新索引时,我的日志中似乎都会收到一条“未定义的字段文本”严重消息。

我的模式中确实有文本字段(自 1.4 版起有效),但以前从未声明为字段类型。这在 3.6 中有变化吗?

我的模式在这里 >> http://pastebin.com/KrCVab0U

SEVERE: org.apache.solr.common.SolrException: undefined field text
        at org.apache.solr.schema.IndexSchema.getDynamicFieldType(IndexSchema.java:1330)
        at org.apache.solr.schema.IndexSchema$SolrQueryAnalyzer.getAnalyzer(IndexSchema.java:408)
        at org.apache.solr.schema.IndexSchema$SolrIndexAnalyzer.reusableTokenStream(IndexSchema.java:383)
        at org.apache.lucene.queryParser.QueryParser.getFieldQuery(QueryParser.java:574)
        at org.apache.solr.search.SolrQueryParser.getFieldQuery(SolrQueryParser.java:206)
        at org.apache.lucene.queryParser.QueryParser.Term(QueryParser.java:1429)
        at org.apache.lucene.queryParser.QueryParser.Clause(QueryParser.java:1317)
        at org.apache.lucene.queryParser.QueryParser.Query(QueryParser.java:1245)
        at org.apache.lucene.queryParser.QueryParser.TopLevelQuery(QueryParser.java:1234)
        at org.apache.lucene.queryParser.QueryParser.parse(QueryParser.java:206)
        at org.apache.solr.search.LuceneQParser.parse(LuceneQParserPlugin.java:79)
        at org.apache.solr.search.QParser.getQuery(QParser.java:143)
        at org.apache.solr.handler.component.QueryComponent.prepare(QueryComponent.java:105)
        at org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:165)
        at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:129)
        at org.apache.solr.core.SolrCore.execute(SolrCore.java:1376)
        at org.apache.solr.handler.PingRequestHandler.handleRequestBody(PingRequestHandler.java:67)
        at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:129)
        at org.apache.solr.core.SolrCore.execute(SolrCore.java:1376)
        at org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:365)
        at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:260)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
        at java.lang.Thread.run(Thread.java:679)

最佳答案

这与字段类型“文本”无关。它是关于名为“文本”的字段。

您已将配置中的默认字段更改为“search_text”。请尝试将所有对“search_text”的引用重命名为“text”。如果这解决了问题,那么您就知道在配置中的某处您指的是“文本”字段,可能在 solrconfig.xml 中,如 Solr Query - HTTP error 404 undefined field text 中所建议的那样

希望对您有所帮助。

关于java - 解决方案 "Undefined field text",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11309494/

相关文章:

java - 在java中操作文本文件

java - 在 EC2 上的 Tomcat 上从 JavaEE 项目提供静态文件

java - 一个应用程序代码具有多个上下文路径/部署以连接到不同的数据库

java - 如何让 SOLR 发现错误?

java - 用java运行纸张扫描仪软件

java - 将字符串 "yyyy-MM-dd"转换为 LocalDateTime

java - 使用 Lucene 对小文档进行高效的位置查询

solr - 根据包含命中的字段提升 Solr 结果

java - 适配器 onBindViewHolder 的位置未显示在 toast 中

eclipse - 获取访问 webapp 的欢迎页面的重定向循环