3

InputStream を使用して html ファイルを文字列として読み込もうとしていますが、何を試しても null ポインター例外が発生し続けます。読み込もうとしているファイルは「/war/index.html」にあり、それを読み込むコードは次のようになります。

File f = new File(path);
        ServletContext context = getServletContext();
        InputStream is = context.getResourceAsStream(f.getAbsolutePath());
        int data = is.read();

is.read() を呼び出すとすぐに、NullPointerException が発生します。どんな助けでも感謝します!

4

1 に答える 1

1

ここに2つの問題が組み合わされているようです:

  • デフォルトでは、相対パスでファイルを作成すると、この場合の作業ディレクトリは になります。これは、ほとんどの場合、web-container のフォルダーjava.dirと同じではありません。webapps
  • パスに追加warのインジケーターがあるようです。

ServletContext がファイルを解決する方法を確認してください。

したがって、次を使用するだけです。

ServletContext context = getServletContext();
InputStream is = context.getResourceAsStream("/index.html");
于 2013-05-31T08:23:48.013 に答える