2012-03-27 19 views
0

私はできる限りこのことを明確にするようにしようとしています。サーバ名からファイルパスの特定の部分を取得するにはどうすればよいですか?

warファイル外のファイルを要求するJSPコードのブロックがあります。

Reader reader = new FileReader("/path/to/"+env+"/this/file.html"); 

このコードをテストするいくつかのテスト環境があります。 4正確に。

"/path/to/"+env1+"/this/file.html" 
"/path/to/"+env2+"/this/file.html" 
"/path/to/"+env3+"/this/file.html" 
"/path/to/"+env4+"/this/file.html" 

私はで始まった:私はこだわっているのはここです

<% String env=" "; 


>% 

。 getServerName()を呼び出さなければならないが、私はフリーズしている。パスのその部分を選択する方法を考えていないようです。私は検索しましたが、私はそれを正しく記述していないと思います。

+0

*私はwarファイルの外にファイルを要求するJSPコードのブロックを持っています。*あなたはそれを再検討すべきです。サーブレットコードは、通常、ファイルシステムにアクセスしないでください! –

答えて

0

HttpServletRequest#getContextPath()はさらに手助けしますか?これは、Webアプリケーションのパスを返します

String realPath = request.getSession().getServletContext().getRealPath("/"); 

+0

私はそれをもちろん撮影します。繰り返しますが、私はURIの特定の部分(env1、env2、env3、env4)を選択しようとしています。それをenvに割り当てます。 – rlegs

0

サーブレットの物理的な位置を取得するには、次のコードを呼び出します。次に、HTMLファイルパスを追加することができます。

関連する問題