Загрузить файл из папки WEB-INF с помощью Spring - PullRequest
4 голосов
/ 12 декабря 2011

Я пытаюсь загрузить конфигурационный файл, находящийся в папке WEB-INF приложения, используя Spring.

Я пытался использовать

private @Autowired ServletContext servletContext;

, а затем

servletContext.getResourceAsStream("/WEB-INF/" + fileNm);

Но servletContext возвращается как ноль.

Что я делаю не так?

Мои методы выглядят так

public static SqlSessionFactory getSqlSessionFactory() {
  SqlSessionFactory  sqlSessionFactory = new SqlSessionFactoryBuilder().build(myConnObj.getIpStream("mybatis-config.xml"));
}

private InputStream getIpStream(String fileNm){
    InputStream inputStream = null;
    try{
        inputStream = servletContext.getResourceAsStream("/WEB-INF/" + fileNm);
    } catch(Exception ex) {
        ex.printStackTrace();
    }
    return inputStream;
}

1 Ответ

4 голосов
/ 12 декабря 2011

Что, если вы попытаетесь реализовать ServletContextAware в своем классе, который сделает его переопределенным:

@Override
    public void setServletContext(ServletContext servletContext) {
        this.servletContext=servletContext;
    }

, который даст вам servletContext?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...