我有一个GWT应用程序可以在我的开发环境中正确访问servlet创建的文件和目录,也可以部署在我的本地Tomcat 7安装上,但是当我将它部署到我的托管公司的服务器时如果找不到我在服务器上创建的文件目录。
有什么建议吗?
答案 0 :(得分:0)
运行getServletContext().getRealPath("/")
将返回应用路径(即/ WEF-INF之前的部分),如C:\Tomcat7\webapps\WebApp\
。因此,如果你的文件进一步失效,在像C:\Tomcat7\webapps\WebApp\classes\com\webapp\server\file.txt
这样的WEB-INF下,你将不得不手动提供其余的路径。
getServletContext().getRealPath("/") + "WEB-INF/classes/com/webapp/server/file.txt"
编辑:如何确保在实际上下文中调用它:
private ServletContext context;
public void init(ServletConfig config) throws ServletException
{
this.context = config.getServletContext();
}
然后在你的doPost或doGet中:
context.getRealPath("/")