我在Eclipse中,一段时间前我使用了这个方法:http://docs.oracle.com/javaee/7/api/javax/servlet/ServletResponse.html#setContentLengthLong(long),现在我不能设法让它工作。我使用的是JDK1.7,我在pom.xml
中插入了以下依赖项
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
</dependency>
我已经用Maven清理并更新了项目。我甚至关闭和打开了Eclipse。当我写道:
response.setContentLengthLong(downloadFile.length());
我得到了:
The method setContentLengthLong(long) is undefined for the type HttpServletResponse
我做错了什么?
发布于 2014-10-05 20:37:57
最有可能的原因是你的帖子上的第二条评论。servlet api的某些其他版本也在类路径中。在Eclipse中打开HttpServletResponse类,并在资源管理器中查找它所属的jar文件。- JB Nizet
http://docs.oracle.com/javaee/6/api/javax/servlet/http/HttpServletResponse.html
如果您查看jdk 6的文档,您会发现它不包含该方法。
发布于 2017-03-29 09:03:00
我今天遇到了同样的问题。我使用的是IDEA,所以我从maven选项卡中打开"Show Dependencies“,然后搜索"servlet-api",其中有一个版本是2.4。
将其从pom.xml中排除,构建成功。
发布于 2018-10-28 00:39:00
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
相反,
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
</dependency>
使用..然后..。解决了.
https://stackoverflow.com/questions/26202578
复制相似问题