简体   繁体   English

使用SOLR配置AEM 6.0

[英]Configuring AEM 6.0 with SOLR

I am trying to configure AEM 6.0 with remote SOLR (4.10.2). 我正在尝试使用远程SOLR(4.10.2)配置AEM 6.0。 I followed the steps and recommended config files mentioned in https://docs.adobe.com/docs/en/aem/6-0/deploy/upgrade/queries-and-indexing.html#Configuring AEM with a single remote SOLR server 我按照https://docs.adobe.com/docs/en/aem/6-0/deploy/upgrade/queries-and-indexing.html#使用单个远程SOLR服务器配置AEM的步骤进行操作,并推荐了配置文件

On the SOLR server I am getting 在SOLR服务器上,我正在

org.apache.solr.common.SolrException: undefined field path_exact

at org.apache.solr.schema.IndexSchema.getDynamicFieldType(IndexSchema.java:1269) at org.apache.solr.schema.IndexSchema.getFieldType(IndexSchema.java:1221) at org.apache.solr.parser.SolrQueryParserBase.getPrefixQuery(SolrQueryParserBase.java:757) at org.apache.solr.parser.SolrQueryParserBase.handleBareTokenQuery(SolrQueryParserBase.java:522) at org.apache.solr.parser.QueryParser.Term(QueryParser.java:299) at org.apache.solr.parser.QueryParser.Clause(QueryParser.java:185) at org.apache.solr.parser.QueryParser.Query(QueryParser.java:107) at org.apache.solr.parser.QueryParser.TopLevelQuery(QueryParser.java:96) at org.apache.solr.parser.SolrQueryParserBase.parse(SolrQueryParserBase.java:151) at org.apache.solr.search.LuceneQParser.parse(LuceneQParser.java:50) at org.apache.solr.search.QParser.getQuery(QParser.java:141) at org.apache.solr.update.DirectUpdateHandler2.getQuery(DirectUpdateHandler2.java:354) at org.apache.solr.update.DirectUpdateHandler2.deleteByQuery(DirectUpdateHandler2.java: 在org.apache.solr.schema.IndexSchema.getFieldType(IndexSchema.java:1221)在org.apache.solr.schema.IndexSchema.getFieldType(IndexSchema.java:1221)在org.apache.solr.parser.SolrQueryParserBase.getPrefixQuery (SolrQueryParserBase.java:757)在org.apache.solr.parser.SolrQueryParserBase.handleBareTokenQuery(SolrQueryParserBase.java:522)在org.apache.solr.parser.QueryParser.Term(QueryParser.java:299)在org.apache。 org.apache.solr.parser.QueryParser.Query(QueryParser.java:107)处的solr.parser.QueryParser.Clause(QueryParser.java:185)在org.apache.solr.parser.QueryParser.TopLevelQuery(QueryParser.java: 96)在org.apache.solr.parser.SolrQueryParserBase.java:151在org.apache.solr.search.LuceneQParser.parse(LuceneQParser.java:50)在org.apache.solr.search.QParser org.apache.solr.update.DirectUpdateHandler2的.getQuery(QParser.java:141).org.apache.solr.update.DirectUpdateHandler2.deleteByQuery(DirectUpdateHandler2.java)的.getQuery(DirectUpdateHandler2.java:354): 384) 384)

AND

org.apache.solr.common.SolrException: Document is missing mandatory uniqueKey field: id
at org.apache.solr.update.AddUpdateCommand.getIndexedId(AddUpdateCommand.java:93)
at org.apache.solr.update.processor.DistributedUpdateProcessor.versionAdd(DistributedUpdateProcessor.java:939)
at org.apache.solr.update.processor.DistributedUpdateProcessor.processAdd(DistributedUpdateProcessor.java:692)
at org.apache.solr.update.processor.LogUpdateProcessor.processAdd(LogUpdateProcessorFactory.java:100)
at org.apache.solr.handler.loader.XMLLoader.processUpdate(XMLLoader.java:247)
at org.apache.solr.handler.loader.XMLLoader.load(XMLLoader.java:174)
at org.apache.solr.handler.UpdateRequestHandler$1.load(UpdateRequestHandler.java:99)
at org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:74)
at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135)
at org.apache.solr.core.SolrCore.execute(SolrCore.java:1967)
at org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:777)
at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:418)
at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:207)

And in my AEM logs I am getting 在我的AEM日志中

equest: http://localhost:8983/solr/update?wt=javabin&version=2
at org.apache.solr.client.solrj.impl.ConcurrentUpdateSolrServer$Runner.run(ConcurrentUpdateSolrServer.java:240)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)

08.05.2016 12:54:59.849 ERROR [concurrentUpdateScheduler-1-thread-1] org.apache.solr.client.solrj.impl.ConcurrentUpdateSolrServer error org.apache.solr.common.SolrException: Bad Request 08.05.2016 12:54:59.849 错误 [concurrentUpdateScheduler-1-thread-1] org.apache.solr.client.solrj.impl.ConcurrentUpdateSolrServer错误org.apache.solr.common.SolrException:错误的请求

Not sure what I am missing. 不知道我在想什么。

although this is an old question, probably still relevant. 尽管这是一个古老的问题,但可能仍然有意义。 Most likely your schema does not match the data to index. 您的架构最有可能与要索引的数据不匹配。 You can either import the Configuration provided by Jackrabbit , write your own schema or use the ManagedIndexSchemaFactory (available since Solr 5 afaik). 您可以导入Jackrabbit提供的配置,编写自己的架构或使用ManagedIndexSchemaFactory (自Solr 5 afaik起可用)。

You don't necessarily need to use Solr 4, you can also go for a newer version. 您不一定需要使用Solr 4,也可以使用较新的版本。

Please also have a look at this Blog-Post about the setup of AEM with Solr (including a sample application) 也请查看有关使用Solr设置AEM的博客文章 (包括示例应用程序)

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

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM