我没有太多运气找出为什么这为ServletContext对象返回null。
我尝试过使用相对和绝对文件位置,两者都返回null。我已经尝试将模板移动到更深的路径,因为我在其他地方读过SO但它仍然返回null。也许我不太明白为什么它返回null,是不是找不到文件?它没有抛出异常,所以我很难理解这里发生了什么。
ServletContext context = getServletContext();
InputStream is = context.getResourceAsStream("/WEB-INF/" + templateLocation);
答案 0 :(得分:1)
找不到文件。 ServletContext的文档指定getResourceAsStream
返回
InputStream返回给servlet,如果指定路径上没有资源,则返回null
请注意,如果文件不存在,则不会引发异常。检查文件是否实际存在于远程服务器上的(tomcat path)/ webapp /(context)/ WEB-INF /(templateLocation)中。