ServletContext.TEMPDIR无法解析或不是字段

时间:2015-05-07 21:14:40

标签: jsf servlets compiler-errors

我正在努力将一些JSF代码从一个项目迁移到另一个项目,并且突然在我的新项目中ServletContext.TEMPDIR值失败。我已经浏览了大部分文件,但这是唯一的错误,我不知道在哪里修复此问题。

不是tempdir servlet上下文的一部分吗?

我起诉JSF和Spring btw。

enter image description here

1 个答案:

答案 0 :(得分:1)

Servlet 3.0中的常量为introduced,它是Java EE 6的一部分。

您的问题表明您正在针对Servlet 2.5或更早版本编译代码,此常量为absent

将编译/构建与目标运行时对齐,并确保在webapp /WEB-INF/lib中没有任何特定于servlet容器的库。

或者,如果实际需要从Servlet 3.0降级到Servlet 2.5,那么将该常量替换为System.getProperty("java.io.tmpdir")的结果:

File tempdir = new File(System.getProperty("java.io.tmpdir"));

另一种选择是使用File#createTempFile()

File tempfile = File.createTempFile(timeString, ".xlsx");