我正在编写一个过滤器,将.js
文件重定向到相应的.js.gz
文件(如果存在)。所以foo.js会去foo.js.gz.问题是,如何从servlet检查WEB-INF目录中是否存在相应的.js.gz文件?
目前,如果我这样做
System.out.println(httpServletRequest.getRequestURI());
File f = new File( httpServletRequest.getRequestURI() );
System.out.println( f.exists);
我明白了:
/test.js
false
即使文件存在。
答案 0 :(得分:3)
如何从servlet检查WEB-INF目录中是否存在相应的.js.gz文件?
使用ServletContext#getRealPath()方法。
File file = new File(request.getServletContext().getRealPath("/WEB-INF/foo.js.gz"));
System.out.println(file.getAbsolutePath());
if(file.exists()){
System.out.println("file exists");
}
欲了解更多信息,请阅读以下评论。