org.springframework.web.SpringServletContainerInitializer cannot be cast to javax.servlet.ServletCon
来源:互联网 发布:酒瓶设计软件 编辑:程序博客网 时间:2024/05/24 05:02
搭建SSM架构的时候,有时启动的时候会抛出以上的异常,这个异常一般都是web.xml文件的内容有错,或者pom.xml有问题(jar包冲突),而且后者的可能性会大一点。
下面是这个异常的全部内容:
严重: A child container failed during startjava.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Tomcat].StandardHost[localhost].StandardContext[]] at java.util.concurrent.FutureTask.report(Unknown Source) at java.util.concurrent.FutureTask.get(Unknown Source) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1123) at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:800) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549) at java.util.concurrent.FutureTask.run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source)Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Tomcat].StandardHost[localhost].StandardContext[]] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) ... 6 moreCaused by: java.lang.ClassCastException: org.springframework.web.SpringServletContainerInitializer cannot be cast to javax.servlet.ServletContainerInitializer at org.apache.catalina.startup.ContextConfig.getServletContainerInitializer(ContextConfig.java:1661) at org.apache.catalina.startup.ContextConfig.processServletContainerInitializers(ContextConfig.java:1569) at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1277) at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:878) at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:369) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5179) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) ... 6 more
根据org.springframework.web.SpringServletContainerInitializer cannot be cast to javax.servlet.ServletContainerInitializer
我们可以发现可能和javax的jar包有关。检查pom文件,发现确实引入了相关的jar包,推断可能和tomcat的内置的相关jar包冲突了,解决方案很简单,我们只需要在引入jar包的时候,添加:
<scope>provided</scope>
让tomcat容器使用这个jar包,而不要使用自己lib里的该jar包。
scope一共有5个值,它们的作用如下:
* compile,缺省值,适用于所有阶段,会随着项目一起发布。 * provided,类似compile,期望JDK、容器或使用者会提供这个依赖。如servlet.jar。 * runtime,只在运行时使用,如JDBC驱动,适用运行和测试阶段。 * test,只在测试时使用,用于编译和运行测试代码。不会随项目发布。 * system,类似provided,需要显式提供包含依赖的jar,Maven不会在Repository中查找它。
阅读全文
0 0
- org.springframework.web.SpringServletContainerInitializer cannot be cast to javax.servlet.ServletCon
- org.springframework.web.SpringServletContainerInitializer cannot be cast to javax.servlet.ServletCon
- org.springframework.web.SpringServletContainerInitializer cannot be cast to javax.servlet.ServletCon
- org.springframework.web.servlet.DispatcherServlet cannot be cast to javax.servlet.Servlet
- org.springframework.web.servlet.DispatcherServlet cannot be cast to javax.servlet.Servlet
- Caused by:....SpringServletContainerInitializer cannot be cast to javax.servlet.ServletContainerInit
- SpringServletContainerInitializer cannot be cast to javax.servlet.ServletContainerInitializer
- maven SpringServletContainerInitializer cannot be cast to javax.servlet.ServletContainerInitializ
- org.springframework.web.servlet.DispatcherServlet cannot be cast to javax.servle
- org.springframework.web.filter.CharacterEncodingFilter cannot be cast to javax.servlet.Filter异常
- org.springframework.web.filter.CharacterEncodingFilter cannot be cast to javax.servlet.Filter报错
- maven org.springframework.web.filter.CharacterEncodingFilter cannot be cast to javax.servlet.Filter
- org.springframework.web.servlet.DispatcherServlet cannot be cast to javax.servle
- org.springframework.web.filter.CharacterEncodingFilter cannot be cast to javax.servlet.Filter
- 升级JDK版本后,SpringServletContainerInitializer cannot be cast to javax.servlet.ServletContainerInitializ
- cannot be cast to org.springframework.web.multipart.MultipartHttpServletRequest
- cannot be cast to org.springframework.web.accept.ContentNegotiationManager
- cannot be cast to javax.servlet.Servlet
- oAuth2 feign 授权模式
- shell 展开
- 拆分窗口
- python中列表的基本操作
- Wind River workbench介绍
- org.springframework.web.SpringServletContainerInitializer cannot be cast to javax.servlet.ServletCon
- HDU 4009-Transfer water
- Java数据库面试题
- shell进程管理
- 谷歌验证码的使用
- TeX中的引号
- 第六章 面向对象(下)
- shell归档与备份
- Distances to Zero(lower_bound和upper_bound应用)