Java servletContext.getRealPath(";/";)未提供Windows上Tomcat 8.0.44所需的路径
我有一个web应用程序,需要在其中创建一个目录,然后返回该目录路径作为响应,以用于其他ajax处理。现在,我已经开发了这个应用程序,并在我的mac机器上测试了它,这台机器工作得很好,但当我在一台windows机器上部署它时,它的tomcat版本与预期的不一样 当我试图创建目录时,我发现分隔符是个问题。我是这样编码的:Java servletContext.getRealPath(";/";)未提供Windows上Tomcat 8.0.44所需的路径,java,ajax,spring-mvc,tomcat,Java,Ajax,Spring Mvc,Tomcat,我有一个web应用程序,需要在其中创建一个目录,然后返回该目录路径作为响应,以用于其他ajax处理。现在,我已经开发了这个应用程序,并在我的mac机器上测试了它,这台机器工作得很好,但当我在一台windows机器上部署它时,它的tomcat版本与预期的不一样 当我试图创建目录时,我发现分隔符是个问题。我是这样编码的: String resultDir = sc.getRealPath("/"); resultDir = resultDir+"screenshots/travel/demo";
String resultDir = sc.getRealPath("/");
resultDir = resultDir+"screenshots/travel/demo";
在这里,resultDir存储了我在ajax调用哪个目录路径作为参数后需要在网页上显示的屏幕截图
现在,我将前斜杠改为File.separator
,因此resultDir变为
resultDir = resultDir+"screenshots"+File.separator+"travel"+File.separator+"demo"+File.separator;
来自服务器的响应在windows计算机上显示为:
C:\Users\roger\Documents\tomcat\webapps\myapp\screenshots\travel\demo\
但在进行ajax调用时,控制台上会出现错误的url错误
它在Mac上运行得很好,但在windows上会出现问题。不要从servlet上下文获取路径,而是尝试从请求中获取路径
“request.getContextPath()”
不要从servlet上下文获取路径,而是尝试从请求中获取路径
“request.getContextPath()”