我有一个web应用程序,我需要在其中创建一个目录,然后将该目录路径作为响应返回,以便用于其他ajax处理。现在,我已经开发了这个应用程序,并在我的mac机器上进行了测试,它的工作方式与charm类似,但当我将其部署到具有相同tomcat版本的windows机器上时,目录路径并不是期望的那样。
当我尝试创建目录时,我发现分隔符是问题所在。这是我的编码方式:
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上却有问题。
发布于 2017-05-26 18:59:13
不是从servlet上下文中获取路径,而是尝试以"request.getContextPath()"
形式从请求中获取路径
https://stackoverflow.com/questions/44198896
复制相似问题