码迷,mamicode.com
首页 > 编程语言 > 详细

maven构建web项目,cannot be cast to javax.servlet.Servlet

时间:2016-09-29 22:12:24      阅读:355      评论:0      收藏:0      [点我收藏+]

标签:provided   项目   cannot   file   

调试Spring MVC时发现如下异常:

java.lang.ClassCastException: org.springframework.web.servlet.DispatcherServlet cannot be cast to javax.servlet.Servlet

 

问题出在servlet-api.jar上,tomcat部署springMVC项目时是不用这个包的,而用maven构建项目时需要,如果不引用该依赖就会不识别  HttpServletRequest等的类

解决方法是在maven引用servlet的依赖时,加上属性范围<scope>provided</scope>


而在引用javax.servlet.jsp的依赖时,如果也没有加上 属性范围<scope>provided</scope>,则也会抛出如下异常:


org.apache.jasper.JasperException: Unable to read TLD "META-INF/c.tld" from JAR file "file:/E:/chenzehe/mvnrepo/javax/servlet/jstl/1.2/jstl-1.2.jar": org.apache.jasper.JasperException: Failed to load or instantiate TagLibraryValidator class: org.apache.taglibs.standard.tlv.JstlCoreTLV


maven构建web项目,cannot be cast to javax.servlet.Servlet

标签:provided   项目   cannot   file   

原文地址:http://alex233.blog.51cto.com/8904951/1857854

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!