【发布时间】:2017-12-08 17:10:19
【问题描述】:
我是 solr 的新手。我已经在我的服务器上安装了 apache tomcat 7.0,我在服务器上安装了 solr 3.6.1。
我的 D:\ 驱动器上有网络人员设置的 solr-home 文件夹。其中的文件夹是: bin,etc,logs,multicore,webapps.
在多核文件夹中有:core0,core1,exampledocs,README.txt 和 solr.xml。在 webapps 文件夹中,我只有 solr.war 文件。
现在我在名为 ConfigUserTextUpdate 的多核文件夹中再保留一个核心文件夹,其中包含 conf 文件夹并重新启动 tomcat 服务,我可以在 localhost/solr 上看到新的核心。
现在我将 db-config.xml 添加到 ConfigUserTextUpdate 核心。以下是内容:
<dataConfig>
<dataSource
type="JdbcDataSource"
driver="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://<dbname>\<servername>;databaseName=dbname" user="username"
password="password"/>
<document>
<entity name="ConfigUserTextUpdate" query="UserTextUpdate_Index">
</entity>
</document>
</dataConfig>
到这里一切都很好,所有三个核心都显示在 localhost/solr 上。 现在在核心 ConfigUserTextUpdate 的 solrconfig.xml 中添加一行
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
<lst name="defaults">
<str name="config">db-data-config.xml</str>
</lst>
</requestHandler>
它开始给出如下所示的错误:
HTTP Status 500 - Severe errors in solr configuration. Check your log files for more detailed information on what may be wrong. If you希望 solr 在配置错误后继续,更改: 假的 solr.xml ----------------------------------------------- -------------- org.apache.solr.common.SolrException:加载类时出错 'org.apache.solr.handler.dataimport.DataImportHandler' 在 org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:394) 在 org.apache.solr.core.SolrCore.createInstance(SolrCore.java:419) 在 org.apache.solr.core.SolrCore.createRequestHandler(SolrCore.java:455) 在 org.apache.solr.core.RequestHandlers.initHandlersFromConfig(RequestHandlers.java:159) 在 org.apache.solr.core.SolrCore.(SolrCore.java:563) 在 org.apache.solr.core.CoreContainer.create(CoreContainer.java:480) 在 org.apache.solr.core.CoreContainer.load(CoreContainer.java:332) 在 org.apache.solr.core.CoreContainer.load(CoreContainer.java:216) 在 org.apache.solr.core.CoreContainer$Initializer.initialize(CoreContainer.java:161) 在 org.apache.solr.servlet.SolrDispatchFilter.init(SolrDispatchFilter.java:96) 在 org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:277) 在 org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:258) 在 org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:382) 在 org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:103) 在 org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4650) 在 org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5306) 在 org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 在 org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901) 在 org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877) 在 org.apache.catalina.core.StandardHost.addChild(StandardHost.java:633) 在 org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:977) 在 org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1655) 在 java.util.concurrent.Executors$RunnableAdapter.call(未知来源) 在 java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) 在 java.util.concurrent.FutureTask.run(未知来源)在 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(未知来源) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(未知来源) 在 java.lang.Thread.run(Unknown Source) 引起: java.lang.ClassNotFoundException: org.apache.solr.handler.dataimport.DataImportHandler 在 java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) 在 java.net.URLClassLoader.findClass(未知来源)在 java.lang.ClassLoader.loadClass(Unknown Source) 在 java.net.FactoryURLClassLoader.loadClass(Unknown Source) 在 java.lang.ClassLoader.loadClass(Unknown Source) 在 java.lang.Class.forName0(本机方法)在 java.lang.Class.forName(未知来源)在 org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:378) ... 27 更多
我已经尝试了很多方法,例如将 dataimporthandler.jar 文件放在核心文件夹中以及在各个站点上提供的其他许多东西,但仍然遇到相同的错误。请帮我解决这些问题。
如果您需要更多信息,请告诉我。
提前致谢。
【问题讨论】: