使用Solr安装liferay:启动时管理控制台无法访问+异常

时间:2010-08-04 12:46:18

标签: solr liferay

我尝试使用运行Tomcat的Liferay 5.5-5.2.3安装solr 1.4.1;我的系统是RHEL5。

下面我解释一下我遇到的错误;然后我提供了我的solr安装的详细信息。

当我启动Tomcat时,我有以下例外:

INFO: Solr home set to '/opt/apache-solr-1.4.1/example/solr/'
Aug 4, 2010 10:44:26 AM org.apache.solr.common.SolrException log
SEVERE:
javax.xml.transform.TransformerException: Unknown error in XPath.
        at org.apache.xpath.XPath.execute(XPath.java:363)
        at org.apache.xpath.jaxp.XPathImpl.eval(XPathImpl.java:213)
        at org.apache.xpath.jaxp.XPathImpl.evaluate(XPathImpl.java:275)
        at org.apache.solr.core.CoreContainer.readProperties(CoreContainer.java:303)
        at org.apache.solr.core.CoreContainer.load(CoreContainer.java:242)
        at org.apache.solr.core.CoreContainer$Initializer.initialize(CoreContainer.java:117)
        at org.apache.solr.servlet.SolrDispatchFilter.init(SolrDispatchFilter.java:83)
        at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:221)
        at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:302)
        at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:78)
        at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3635)
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:4222)
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:760)
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:740)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:544)
        at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:927)
        at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:890)
        at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
        at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1150)
        at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
        at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1022)
        at org.apache.catalina.core.StandardHost.start(StandardHost.java:736)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
        at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
        at org.apache.catalina.core.StandardService.start(StandardService.java:448)
        at org.apache.catalina.core.StandardServer.start(StandardServer.java:700)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:552)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:592)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)
Caused by: java.lang.NullPointerException
        at org.apache.xpath.axes.ChildTestIterator.setRoot(ChildTestIterator.java:125)
        at org.apache.xpath.axes.NodeSequence.setRoot(NodeSequence.java:213)
        at org.apache.xpath.axes.LocPathIterator.execute(LocPathIterator.java:210)
        at org.apache.xpath.XPath.execute(XPath.java:335)
        ... 33 more
--------------- linked to ------------------
javax.xml.xpath.XPathExpressionException: javax.xml.transform.TransformerException: Unknown error in XPath.
        at org.apache.xpath.jaxp.XPathImpl.evaluate(XPathImpl.java:289)
        at org.apache.solr.core.CoreContainer.readProperties(CoreContainer.java:303)
        at org.apache.solr.core.CoreContainer.load(CoreContainer.java:242)
        at org.apache.solr.core.CoreContainer$Initializer.initialize(CoreContainer.java:117)
        at org.apache.solr.servlet.SolrDispatchFilter.init(SolrDispatchFilter.java:83)
        at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:221)
        at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:302)
        at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:78)
        at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3635)
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:4222)
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:760)
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:740)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:544)
        at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:927)
        at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:890)
        at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
        at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1150)
        at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
        at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1022)
        at org.apache.catalina.core.StandardHost.start(StandardHost.java:736)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
        at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
        at org.apache.catalina.core.StandardService.start(StandardService.java:448)
        at org.apache.catalina.core.StandardServer.start(StandardServer.java:700)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:552)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:592)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)
Caused by: javax.xml.transform.TransformerException: Unknown error in XPath.
        at org.apache.xpath.XPath.execute(XPath.java:363)
        at org.apache.xpath.jaxp.XPathImpl.eval(XPathImpl.java:213)
        at org.apache.xpath.jaxp.XPathImpl.evaluate(XPathImpl.java:275)
        ... 31 more
Caused by: java.lang.NullPointerException
        at org.apache.xpath.axes.ChildTestIterator.setRoot(ChildTestIterator.java:125)
        at org.apache.xpath.axes.NodeSequence.setRoot(NodeSequence.java:213)
        at org.apache.xpath.axes.LocPathIterator.execute(LocPathIterator.java:210)
        at org.apache.xpath.XPath.execute(XPath.java:335)
        ... 33 more

Aug 4, 2010 10:44:26 AM org.apache.solr.servlet.SolrDispatchFilter init
INFO: user.dir=/opt/apache-solr-1.4.1

Tomcat启动后,我尝试在导航器中访问solr:http://MyIpAddress/solr/

我有“欢迎来到索尔!”页面,没关系。但是,当我点击“Solr Admin”链接时,我收到错误消息“HTTP状态404 - 路径中缺少核心名称”。

我补充说,如果我使用start.jar单独启动solr,我会得到相同的行为(我得到相同的异常,然后当我尝试访问控制台时出现相同的错误)。

现在,以下是我在安装中遵循的步骤:

  • 我下载了solr 1.4.1 ,,并在/ opt。
  • 下解压缩了该文件
  • 我在/opt/apache-solr-1.4.1/example/solr
  • 下复制了文件/opt/apache-solr-1.4.1/dist/apache-solr-1.4.1.war
  • 我创建了一个名为solr.xml的文件,其中包含以下内容,我把它放在两个文件夹中:来自Tomcat的conf / Catalina / localhost,以及/opt/apache-solr-1.4.1/example/solr:
  

上下文   的docBase = “/选择/阿帕奇-的solr-1.4.1 /示例/ solr的/阿帕奇-solr的-1.4.1.war”   debug =“0”crossContext =“true”

     

环境名称=“solr / home”   类型= “java.lang.String中”   value =“/ opt / apache-solr-1.4.1 / example / solr”override =“true”

  • 在Tomcat的文件bin / setenv.sh中,我添加了一行:

JAVA_OPTS ==“$ JAVA_OPTS -Dsolr.solr.home = SOLR_HOME / example / solr”

  • 在文件/opt/apache-solr-1.4.1/example/solr/conf/solrconfig.xml中,我在dataDir标记中显式设置索引目录:
  

$ {solr.data.dir:/opt/apache-solr-1.4.1/example/solr/data}

然后我启动了Tomcat。

感谢您对我的配置有什么问题的建议。

西尔

1 个答案:

答案 0 :(得分:0)

看起来solr.xml文件不包含正确的设置。您应该使用Catalina文件夹中的设置,但是您应该在solr主目录中创建另一个。

看起来像这样(如果你想使用核心):

<solr persistent="false" sharedLib="./lib">
  <cores adminPath="/admin/cores">
    <core name="standards" instanceDir="standards" />
  </cores>
</solr>