2011-11-19 49 views
1

我有一個使用大量文本文件的Java程序。當作爲獨立的Java應用程序運行時,該程序運行得非常好。但是當我從JSP頁面調用相同的方法時,它將不起作用。它說它無法找到文本文件。爲項目中的每個文本文件提供FileNotFoundExceptionFileNotFoundException從JSP訪問文件時

任何幫助將不勝感激。我正在使用SpringSource Tool Suite 2.8 for Mac。 TC服務器。

這是錯誤:

同爲的1.txt到99.txt:

java.io.FileNotFoundException:100.txt(沒有這樣的文件或目錄)

回答

1

我猜您的JSP頁面不是從您的程序所在的位置運行。如果你正在Tomcat內運行你的JSP或類似的東西,那麼它將從服務器的webapps(或類似的)文件夾運行。您應該更改JSP中指定的路徑以完全限定文本文件的位置。

例如,不要把這樣的:

\testfiles\hello.txt 

把這個

c:\bob\testfiles\hello.txt 
+1

雖然我與給定的錯誤原因同意,我會選擇使用[ServletContext中的getResource#()] (http://download.oracle.com/javaee/6/api/javax/servlet/ServletContext.html#getResource%28java.lang.String%29)而不是傳遞絕對路徑。絕對路徑對容器外的可用資源*做出假設,未來可能會出現問題。 –

+0

哦!我正在使用Java方法中的文本文件的路徑。我只是在jsp中調用這個Java方法.....所以,從技術上講,如果程序運行良好,並且JSP可以成功調用程序,那麼我應該沒有結果!!!請讓我知道... thanx的快速反應.....順便說一句...所有的文本文件,Java文件,JSP和HTML頁面都在一個Project目錄..... THANKS .. ARYA。 – user365829