XIncludeAwareParserConfiguration cannot be cast to org.apache.xerces.xni.parser.XMLParserConfigurat

来源:互联网 发布:迪士尼乐园彩票端口 编辑:程序博客网 时间:2024/05/12 00:09

单个context,配置没有问题
但是当一个tomcat下有两个context时(都是用richfaces)就启动不起来了,出错
com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! org.apache.xerces.parsers.XIncludeAwareParserConfiguration cannot be cast to org.apache.xerces.xni.parser.XMLParserConfiguration
at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:213)
at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:196)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4342)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:926)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:889)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1149)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:516)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
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:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
Caused by: java.lang.ClassCastException: org.apache.xerces.parsers.XIncludeAwareParserConfiguration cannot be cast to org.apache.xerces.xni.parser.XMLParserConfiguration


然后把一个lib中的xercesImpl.jar文件删除掉,就2个都能启动起来了
很奇怪……不知何故
但是虽然启动好了,有些使用ajax的程序会出错

java.lang.NoClassDefFoundError: org/apache/xerces/xni/parser/XMLConfigurationException
org.ajax4jsf.webapp.ConfigurableXMLFilter$NekoParserConfig.createParser(ConfigurableXMLFilter.java:162)
org.ajax4jsf.webapp.ParserConfig.getParser(ParserConfig.java:49)
org.ajax4jsf.webapp.ConfigurableXMLFilter.getParser(ConfigurableXMLFilter.java:130)

命苦啊……

------------------------------------------------------
想出办法了:把xercesImpl.jar移动到tomcat/lib目录下
---------------

【转载】

 

删掉两个项目中的xercesImpl.jar,放到tomcat/lib下

 

 

原创粉丝点击