我的项目是在ZK上编写的,并使用多个XML文件作为资源文件。在加载页面时手动解析这些文件并表示应用程序的逻辑。在本地机器上,我曾经将这些文件存储在eclipse根目录中,因为服务器(Tomcat 6.0)用于在那里搜索它们。将这些文件上传到Jelastic云的正确方法是什么?
答案 0 :(得分:1)
您的Web应用程序可以(通常应该)打包为自包含文件,因此您无需担心这些依赖关系可能位于不同的部署位置。那么,这个问题不是关于ZK或Jelastic,而是关于如何在war
内打包资源。
标准Java方法是让资源文件最终位于classes
war
文件夹中。然后,您可以使用..
foo.bar.Baz.class.getResource("xyz.txt");
foo.bar.Baz.class.getClassLoader().getResource("foo/bar/xyz.txt");
要获取文件,您可以将它们放在Java包结构中(通常不是最干净的方法),或者使用构建过程将所有内容放在一起。使用Maven,您只需将XML文件放在src/main/resources/
中即可。使用Ant,你可以include these files from where ever。
另一种方法是将资源文件放在WEB-INF/
目录中。在那里可以使用..来访问它们。
servletContext.getResourceAsStream("/WEB-INF/myfile");