Dúvida listener

Bom dia,

Gostaria de saber se um listener é capaz de obter os parâmetros do contextos especificados no web.xml? Ex:

web.xml:

(...)
    <context-param>
        <param-name>nomeParam</param-name>
        <param-value>true</param-value>
    </context-param>
	
</web-app>

No listener, é possível executar o comando:

    boolean teste = Boolean.parseBoolean(getServletContext().getInitParameter("nomeParam"));

Depois que eu coloquei o código acima no listener, a aplicação começou apresentar o erro 404. Acredito que isto ocorre porque este código gera alguma exceção.
Por isso, deixo aqui a minha dúvida (se um listener é capaz de obter os parâmetros do contextos especificados no web.xml?) e agradeço se alguém puder me ajudar.

Obrigado,
Nadilson

veja se o código a seguir q implementa um listener pegando um parâmetro do web.xml q funciona te ajuda:

[code]
import javax.servlet.*;

public class MyServletContextListener implements ServletContextListener{

public void contextInitialized(ServletContextEvent event) {
	ServletContext sc = event.getServletContext();
	String dogBreed = sc.getInitParameter("breed");
	
	Dog d = new Dog(dogBreed);
	
	sc.setAttribute("dog", d);
}//fecha método contextInitialized

public void contextDestroyed(ServletContextEvent event) {
		
}//fecha método contextDestroyed

}//fecha a classe MyServletContextListener[/code]

esse código ta no livro java use a cabeça jsp & servlets

Obrigado Emanoel,

Agora não dá mais o erro 404. No entanto o parâmetro fica nulo.
Vou revisar o web.xml para ver se existe algum erro.

Gostaria, se possível, que você me falasse qual página no livro “Servlets & JSP” tem esse exemplo. Revirei este livro de cima para baixo e não encontrei nenhuma referência.

Mais uma vez, muito obrigado.

Nadilson

o código ta pag 112 do livro, mas é na versão em português blz?

tem q fazer o mapeamento do listener tb no web.xml:

&lt;listener&gt; &lt;listener-class&gt;com.example.MyServletContextListener&lt;/listener-class&gt; &lt;/listener&gt;

Eu já tinha mapeado.
O erro ocorria por duas razões:

  1. O tem que ser definido antes de qualquer servlet ou listener (vi isso numa apostila que consegui na web)
  2. O atributo que guarda o valor do tem que ser static.

Muito obrigado,
Você me ajudou muito.

Nadilson

:smiley: