2011-07-15 3 views
0

私の安らかなアプリケーションの展開は、単一のWARファイルから「展開」されます。すべてのファイルパスは、絶対パスではなく相対パスである必要があります(単一のWEB-INFディレクトリからのネスト)。これらのファイルを指定するための規約(.propertiesファイル.xmlファイルなど)は何ですか?誤って指定の安らかなWebアプリケーションでの相対ファイルパスの指定方法

例:私が達成しようとしているもののfile f = file(/usr/home/username/.../WEB-INF/file.something);

例:file f = new file(file.something);

+1

あなたはどのファイルパスについて話していますか?あなたは例を挙げることができますか?このためにプロパティファイルを定義する必要がある場合は、何か問題があります。ファイルは互いに対して相対的でなければなりません。 –

答えて

3

(コントローラ/サーブレットから)あなたは/usr/homeまたは任意の絶対パスを使用してファイルを指定することはありません。正しい方法はgetResourceAsStreamgetResourceもありServletContext.getRealPath()

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

を使用しています。

+0

あなたの返事ありがとうございますアミール – stackoverflow

+0

私はどのように私のコントローラ内でこれを行うのですか? – stackoverflow

+0

getServletContext()。getResourceAsStream(...)を実行できます。この方法でファイルを開く必要がないので、リソースをストリームとして使用するほうが良いでしょう。 –