Общие init-параметры в web.xml для нескольких сервлетов Java?
Насколько я понимаю, init-params в файле web.xml должны быть помещены в тело переменной сервлета, например:
<servlet>
<servlet-name>MyServlet</servlet-name>
<servlet-class>MyServlet</servlet-class>
<init-param>
<description>debug</description>
<param-name>debug</param-name>
<param-value>true</param-value>
</init-param>
</servlet>
Это работает нормально, но если я выведу init-param за пределы тела сервлета, то он больше не распознает его, когда я вызываю getInitParam()
Просто интересно, если бы это было возможно, так как у меня есть 3 сервлета, которые я хотел бы поделиться общими параметрами инициализации
1 ответ
Нет, вы не можете достичь этого с помощью сервлета init-param. Если вам нужен общий init-param для сервлетов, вы должны использовать параметры контекста.
Вот как вы можете это сделать:
<context-param>
<description>debug</description>
<param-name>debug</param-name>
<param-value>true</param-value>
</context-param>
И используйте ServletContext.getInitParameter() внутри сервлета.