开发者

How do I access a text file from within my war

How do I know what file reference to use to get a file from my WAR.

The structure of the WAR is:

WAR

src

- model

- web

build

  WebContent

    META-INF

    WEB-INF

      LIB

The JSPs are under 开发者_开发技巧WebContent, I have put the config.txt file under the WebContent folder and tried to get to it with

BufferedReader in = new BufferedReader(new FileReader("WebContent/config.txt"));

But this doesn't work. Does anyone know what reference I need to pass or how I can figure it out.


Check out ServletContext.getResourceAsStream(). Here is an example.


I think just remove WebContent from the path while reading the file and it should help.


One way to do this comes with a caveat that I'll explain below. You should do something like this:

// In a Servlet
ServletContext sc = getServletContext();
BufferedReader in = 
    new BufferedReader(new FileReader(sc.getRealPath("WebContent/config.txt"));

This assumes that your servlet container is configured to expand war files into their corresponding directory structure.


The safest way to access this file should be something like this:

InputStream input = getClass().getClassLoader().getResourceAsStream("your/path/enter/here");

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜