java.lang.NoSuchMethodException: org.apache.catalina.deploy.WebXml addFilter

java.lang.NoSuchMethodException: org.apache.catalina.deploy.WebXml addFilter  
    at org.apache.tomcat.util.IntrospectionUtils.callMethod1(IntrospectionUtils.java:855)  
    at org.apache.tomcat.util.digester.SetNextRule.end(SetNextRule.java:201)  
    at org.apache.tomcat.util.digester.Digester.endElement(Digester.java:1063)  
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:606)  
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement (XMLDocumentFragmentScannerImpl.java:1742)  
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl $FragmentContentDriver.next (XMLDocumentFragmentScannerImpl.java:2900)  
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next (XMLDocumentScannerImpl.java:607)  
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument (XMLDocumentFragmentScannerImpl.java:489)  
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:835)  
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764)  
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:123)  
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1210)  
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:568)  
    at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1561)  
    at org.apache.catalina.startup.ContextConfig.parseWebXml(ContextConfig.java:1809)  
    at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1247)  
    at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:873)  
    at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:371)  
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)  
    at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)  
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5355)  
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)  
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)  
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)  
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)  
    at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1229)  
    at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1875)  
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)  
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)  
    at java.util.concurrent.FutureTask.run(FutureTask.java:166)  
    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:722)  
六月 12, 2014 7:22:06 下午 org.apache.catalina.startup.ContextConfig parseWebXml  
SEVERE: Parse error in application web.xml file at jndi:/localhost/carManager/WEB-INF/web.xml  
org.xml.sax.SAXParseException; systemId: jndi:/localhost/carManager/WEB-INF/web.xml; lineNumber: 33; columnNumber: 11; Error at (33, 11) : org.apache.catalina.deploy.WebXml addFilter  
    at org.apache.tomcat.util.digester.Digester.createSAXException(Digester.java:2711)  
    at org.apache.tomcat.util.digester.Digester.createSAXException(Digester.java:2743)  
    at org.apache.tomcat.util.digester.Digester.endElement(Digester.java:1066)  
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:606)  
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement (XMLDocumentFragmentScannerImpl.java:1742)  
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl $FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2900)  
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next (XMLDocumentScannerImpl.java:607)  
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument (XMLDocumentFragmentScannerImpl.java:489)  
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:835)  
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764)  
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:123)  
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1210)  
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:568)  
    at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1561)  
    at org.apache.catalina.startup.ContextConfig.parseWebXml(ContextConfig.java:1809)  
    at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1247)  
    at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:873)  
    at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:371)  
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)  
    at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)  
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5355)  
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)  
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)  
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)  
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)  
    at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1229)  
    at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1875)  
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)  
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)  
    at java.util.concurrent.FutureTask.run(FutureTask.java:166)  
    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:722)  
Caused by: java.lang.NoSuchMethodException: org.apache.catalina.deploy.WebXml addFilter  
    at org.apache.tomcat.util.IntrospectionUtils.callMethod1(IntrospectionUtils.java:855)  
    at org.apache.tomcat.util.digester.SetNextRule.end(SetNextRule.java:201)  
    at org.apache.tomcat.util.digester.Digester.endElement(Digester.java:1063)  
    ... 30 more  
六月 12, 2014 7:22:06 下午 org.apache.catalina.startup.ContextConfig parseWebXml  
SEVERE: Occurred at line 33 column 11  
六月 12, 2014 7:22:06 下午 org.apache.catalina.startup.ContextConfig configureStart  
SEVERE: Marking this application unavailable due to previous error(s)  
六月 12, 2014 7:22:06 下午 org.apache.catalina.core.StandardContext startInternal  
SEVERE: Error getConfigured  
六月 12, 2014 7:22:06 下午 org.apache.catalina.core.StandardContext startInternal  
SEVERE: Context [/carManager] startup failed due to previous errors  


解决办法:
在tomacat的配置文件context.xml里加上<Loader delegate="true"/>

Loader对象可出现在Context中以控制Java类的加载。属性:delegate

delegate配置的意义:

True,表示tomcat将遵循JVM的delegate机制,即一个WebAppClassLoader在加载类文件时,会先递交给SharedClassLoader加载,SharedClassLoader无法加载成功,会继续向自己的父类委托,一直到BootstarpClassLoader,如果都没有加载成功,则最后由WebAppClassLoader自己进行加载。

False,表示将不遵循这个delegate机制,即WebAppClassLoader在加载类文件时,会优先自己尝试加载,如果加载失败,才会沿着继承链,依次委托父类加载。 
在此说一下配置为False需要注意的问题:一旦配置为False,就要注意多个WebApp公用jar包存放位置,你可能会放到${CATALINA_HOME}/shared目录中共享,但是一不小心在应用的/WEB-INF/lib中也包含了一个同名的但版本不一致的jar的话,这就有可能会导致很多奇怪的问题

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30046312/viewspace-2151900/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/30046312/viewspace-2151900/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值