momomo momomo - 4 months ago 35
Java Question

Spring MVC Get file under WEB-INF without a request

I am trying to get hold of a file ( or a directory ) under


outside of a request. I need it in a bean loaded at server startup.

All solutions I can find either wants an XML file using
or a request to get the servlet context or using the current executing class. Seems ugly to me.

How can I get a
. There has to be a way, no!?


As long as your bean is declared in web application context you can obtain an instance of ServletContext (using ServletContextAware, or by autowiring).

Then you can access files in webapp directory either directly (getResourceAsStream(), getRealPath()), or using ServletContextResource.

EDIT by momo:

ServletContext servletContext;

... myMethod() { 
     File rootDir = new File( servletContext.getRealPath("/WEB-INF/myDIR/") );