好吧,首先,它
this.getClass().getResource不应该工作(尽管我没有尝试)。它不是类路径,而是ServletContext,因此您需要使用
ServletContext.getResource。
问题是,文件不是必需的:它可以是WAR存档中的条目。因此,根据您确切了解的内容,答案可能会有所不同。
我们使用一个Spring实用程序类来处理文件(通过
ServletContext.getResourcePaths)(如果有)和WAR(通过
ServletContext.getResource)。如果使用Spring,那可能是最好的方法。如果您不这样做,则可能需要重新实施该解决方案。
另外,您只需使用
ServletContext.getResourceAsStream-不在乎资源的确切存储位置。因此,只要您需要它的内容而不是路径,就可以了。



