在调试SpringMVC返回正常视图解析的数据没问题,但是不经过视图解析,直接返回字符串时发现报500错误:
java.lang.NoSuchMethodError: javax.servlet.http.HttpServletResponse.setContentLengthLong(J)V
分析:
在看到这个错误时,查看了HttpServletResponse类,发现没有这个方法。于是把servlet包依赖更新到最新的。由于spring框架版本是最新的5.3.3。经过测试发现依然报同样的问题,经过实验发现是tomcat版本太低导致这个的错误。
解决过程如下:
1.换spring框架
我们更换了spring框架5.3.3到4.1.0,完美解决此问题
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>4.1.0.RELEASE</version>
</dependency>
2.更换tomcat从7版本换到9版本,完美解决。
tomcat下载地址