我正在为solr应用程序运行Tomcat服务器。我重新启动服务器,并在catalina.out中观察到以下错误。
Exception configuring digester to permit java encoding names in XML files. Only IANA encoding names will be supported.
此错误的含义是什么,如何解决?我根本不了解Java,因此不胜感激。这是CentO上的Tomcat6。
编辑的日志文件:
Jan 1, 2013 10:14:44 a.m. org.apache.catalina.users.MemoryUserDatabase open
WARNING: Exception configuring digester to permit java encoding names in XML files. Only IANA encoding names will be supported.
org.xml.sax.SAXNotSupportedException: http://apache.org/xml/features/allow-java-encodings
at gnu.xml.stream.SAXParserFactory.setFeature(libgcj.so.10)
at org.apache.tomcat.util.digester.Digester.setFeature(Digester.java:556)
at org.apache.catalina.users.MemoryUserDatabase.open(MemoryUserDatabase.java:391)
............
Jan 1, 2013 10:14:44 a.m. org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
Jan 1, 2013 10:14:44 a.m. org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.24
Jan 1, 2013 10:14:44 a.m. org.apache.catalina.startup.HostConfig deployDescriptor
INFO: Deploying configuration descriptor manager.xml
Jan 1, 2013 10:14:45 a.m. org.apache.catalina.startup.TldConfig lifecycleEvent
SEVERE: Error processing TLD files for context path /manager
java.lang.IllegalArgumentException: URI "file:./" is not hierarchical
at java.io.File.<init>(libgcj.so.10)
at org.apache.catalina.startup.TldConfig.getJarPaths(TldConfig.java:687)
at org.apache.catalina.startup.TldConfig.execute(TldConfig.java:281)
...........
Jan 1, 2013 10:14:45 a.m. org.apache.catalina.startup.HostConfig deployDescriptor
INFO: Deploying configuration descriptor solr.xml
Jan 1, 2013 10:14:45 a.m. org.apache.catalina.startup.TldConfig lifecycleEvent
SEVERE: Error processing TLD files for context path /solr
java.lang.IllegalArgumentException: URI "file:./" is not hierarchical
at java.io.File.<init>(libgcj.so.10)
at org.apache.catalina.startup.TldConfig.getJarPaths(TldConfig.java:687)
at org.apache.catalina.startup.TldConfig.execute(TldConfig.java:281)
at org.apache.catalina.startup.TldConfig.lifecycleEvent(TldConfig.java:739)
at
.........
Jan 1, 2013 10:14:45 a.m. org.apache.solr.core.SolrResourceLoader locateSolrHome
INFO: Using JNDI solr.home: /var/lib/tomcat6/my/solr/
Jan 1, 2013 10:14:45 a.m. org.apache.solr.core.SolrResourceLoader <init>
INFO: new SolrResourceLoader for deduced Solr Home: '/var/lib/tomcat6/my/solr/'
Jan 1, 2013 10:14:45 a.m. org.apache.solr.servlet.SolrDispatchFilter init
INFO: SolrDispatchFilter.init()
Jan 1, 2013 10:14:45 a.m. org.apache.solr.core.SolrResourceLoader locateSolrHome
INFO: Using JNDI solr.home: /var/lib/tomcat6/my/solr/
Jan 1, 2013 10:14:45 a.m. org.apache.solr.core.CoreContainer$Initializer initialize
INFO: looking for solr.xml: /var/lib/tomcat6/my/solr/solr.xml
Jan 1, 2013 10:14:45 a.m. org.apache.solr.core.CoreContainer load
INFO: Loading CoreContainer using Solr Home: '/var/lib/tomcat6/my/solr/'
Jan 1, 2013 10:14:45 a.m. org.apache.solr.core.SolrResourceLoader <init>
INFO: new SolrResourceLoader for directory: '/var/lib/tomcat6/my/solr/'
Jan 1, 2013 10:14:45 a.m. org.apache.solr.core.CoreContainer create
INFO: Creating SolrCore '' using instanceDir: /var/lib/tomcat6/my/solr/.
Jan 1, 2013 10:14:45 a.m. org.apache.solr.core.SolrResourceLoader <init>
INFO: new SolrResourceLoader for directory: '/var/lib/tomcat6/my/solr/./'
Jan 1, 2013 10:14:45 a.m. org.apache.solr.core.SolrConfig initLibs
INFO: Adding specified lib dirs to ClassLoader
Jan 1, 2013 10:14:45 a.m. org.apache.solr.common.SolrException log
SEVERE: Error in xpath:javax.xml.xpath.XPathExpressionException: multiple nodes in node-set
我正在用这个做solr
最佳答案
试试看这里:
http://www.coderanch.com/t/614743/Tomcat/Tomcat-CentOS-VM
我的问题是发现catalina.sh脚本的Java安装不好。不知道为什么,因为我没有调查。
这是centos 6 tomcat6 RPM安装。解决方法是安装Oracle JDK,然后将/etc/tomcat6/tomcat6.conf更改为使用新安装的Oracle JDK。