首页 > 代码库 > Spring 4在servlet2.5上单元测试出错解决方法
Spring 4在servlet2.5上单元测试出错解决方法
今天在SpringMVC 4上单元测试出现如下错误。
java.lang.NoClassDefFoundError: javax/servlet/SessionCookieConfig at org.springframework.mock.web.MockHttpSession.<init>(MockHttpSession.java:99) at org.springframework.mock.web.MockHttpSession.<init>(MockHttpSession.java:89) at org.springframework.mock.web.MockHttpSession.<init>(MockHttpSession.java:80)
servlet为2.5,Spring版本为4.1.1,tomcat 6
在网上翻了半天,终于找到原因。
Spring Reference中提到,虽然Spring4仍然支持2.5,但它的主要目标是Servlet3.0及以上版本。如果你用Spring MVC Test Framework进行测试,则必须添加
兼容Servlet3.0的jar包(即3.0以上的servlet的jar包),
解决办法:
在pom.xml中添加依赖
<dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.0.1</version> <scope>test</scope></dependency>
限制scope为test即可。
参考:https://jira.spring.io/browse/SPR-11049
Spring 4在servlet2.5上单元测试出错解决方法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。