我正在尝试使用Servlet
中的以下代码创建文件:
File outfile= new File(servletContext.getRealPath("/Output/output.xml"));
OutputStream os = new FileOutputStream(outfile);
来自J2EE应用程序(CallMain)的并且文件在已部署的临时路径中创建
.metadata.plugins \ org.eclipse.wst.server.core \ TMP1 \ wtpwebapps \ CallMain \输出的
实际上我希望在当前项目文件夹中创建文件: WebContent 。
答案 0 :(得分:1)
实际上当你使用嵌入式tomcat服务器在eclipse中运行servlet时
getServletContext().getRealPath("WEB-INF")
给你这个
D:\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\DynaServletProject\WEB-INF
但是当您从独立的Apache Tomcat运行servlet时:
getServletContext().getRealPath("WEB-INF")
这会给你
D:\apache-tomcat-7.0.33\webapps\DynaServletProject\WEB-INF
虽然在日食中你可以给出绝对路径我不认为这是最好的方法
答案 1 :(得分:0)
默认情况下,您的应用程序将从隐藏在工作空间的.metadata目录中的目录进行分段和运行。 是运行时的“真实路径”。检查服务器的配置,以获取有关从工作区文件夹部署app目录的选项。