2011-07-15 45 views
0

我的宁静应用程序的部署将从单个WAR文件“爆炸”。所有文件路径都需要是相对的而不是绝对的(从单个WEB-INF目录嵌套)。指定这些文件的惯例是什么(例如.properties文件.xml文件等)?如何在宁静的Web应用程序中指定相对文件路径

错误地指定的示例:我想要达到file f = file(/usr/home/username/.../WEB-INF/file.something);

例子:(从控制器/ Servlet的)file f = new file(file.something);

+1

你在说什么文件路径?你能给个例子吗?如果您需要为此定义属性文件,那么会出现问题。文件应该是相互关联的。 –

回答

3

你永远不应该指定使用/usr/home或任何绝对路径的文件。正确的方法是使用ServletContext.getRealPath()

context.getRealPath("/WEB-INF/file.something"); 

还有getResourceAsStreamgetResource

+0

谢谢你的回应Amir – stackoverflow

+0

我该如何从我的控制器内做到这一点? – stackoverflow

+0

你可以做getServletContext()。getResourceAsStream(...)。它可能更好地使用资源作为流,因为您不必以这种方式打开文件。 –

相关问题