2011-07-15 35 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(...)。它可能更好地使用資源作爲流,因爲您不必以這種方式打開文件。 –

相關問題