В моем сервлете я хотел бы получить доступ к корню контекста, чтобы я мог выполнить минимизацию JavaScript
Вы также можете получить доступ к файлам в WebContent по ServletContext#getResource()
. Так что, если ваш файл JS, например, расположен в WebContent/js/file.js
, вы можете использовать следующее в вашем Servlet
, чтобы получить File
дескриптор этого:
File file = new File(getServletContext().getResource("/js/file.js").getFile());
или получить InputStream
:
InputStream input = getServletContext().getResourceAsStream("/js/file.js");
Тем не менее, как часто вам нужно минимизировать JS-файлы? Я никогда не видел необходимости минимизации на основе запросов, это только излишне добавляло бы много накладных расходов. Возможно, вы захотите сделать это только один раз при запуске приложения. Если так, то использование Servlet
для этого плохая идея. Лучше используйте ServletContextListener
и делайте свое дело на contextInitialized()
.