Ola Javeiros! Dando continuidade ao nosso estudo para a certificacao SCWCD veremos neste post rapido como fazer para utilizar parametros de inicializacao em nossa aplicacao e tambem em um Servlet especifico.E possivel adicionar parametros que sao acessiveis por toda a aplicacao. Muitos frameworks web fazem uso desse recurso. Digamos que a aplicacao necessite enviar um email para o administrador reportando erros, se colocarmos o email do administrador no codigo da aplicacao e este email sofra alguma mudanca, sera necessario gerar um novo arquivo de deploy da aplicacao. Este problema pode ser resolvido adicionando um parametro de inicializacao no arquivo descritor (web.xml), e dessa forma ele estara disponivel para toda a aplicacao.Digite o trecho a seguir entre as tags web-app do seu arquivo descritor. A API de Servlet disponibiliza, atraves da interface ServletContext, metodos para acessar os parametros de inicializacao. Existem dois metodos para tal:Enumeration getInitParameterNames: Este metodo retorna uma enumeration contendo todos os nomes de parametros disponiveis no web.xml. Ele e muito util quando nao se sabe o nome do parametro.String getInitParameter(String name): Este metodo retorna o valor (param-value) do parametro de inicializacao. Vale lembrar que sempre e retornado uma String e nunca outro tipo como Integer, Long, etc.No trecho de codigo abaixo podemos ver o uso desses metodos a partir de um servlet.Quando o servlet for acessado ele ira exibir todos os parametros de inicializacao disponiveis.E possivel tambem criar parametros de inicializacao para Servlets, a diferenca e que estes serao visiveis somente para os servlets onde foram declarados. O conceito e basicamente igual ao anterior, porem devemos atentar para as tags que criam cada um deles. No exemplo anterior nos colocamos a tag context-param na raiz do nosso descritor, ja para os parametros de servlets iremos utilizar a tag init-param e esta deve ser declarada sobre a tag servlet (tag de declaracao de um servlet).O trecho abaixo mostra a criacao de um parametro para um Servlet.Veja que a unica diferenca para o exemplo anterior e a tag init-param. Outra mudanca tambem e na forma como o parametro e acessado. Na verdade a mudanca e no objeto em que ela e acessado, nao mais o ServletContext e sim o proprio Servlet.Vejamos abaixo o codigo que acessa os parametros do servlet:Observe que o metodo getInitiParameterNames e chamado diretamente de Servlet e nao mais do contexto como no exemplo anterior.Entao e isso pessoal. Espero que tenham gostado do post! Ate o proximo entao. Ola Javeiros! No post anterior comecamos a falar sobre servlet listeners. Vamos continuar a serie e agora falaremos sobre o listener de atributos de contexto ou ServletContextAttributeListener. Este listener e notificado quando algum atributo e adicionado, removido ou alterado no contexto da aplicacao.A criacao deste listener e semelhante ao criamos anteriormente. Teremos que implementar a interface java.servlet.ServletContextAttributeListener e seus tres metodos:void attributeAdded(ServletContextAttributeEvent): este metodo e chamado automaticamente sempre que um atributo for adicionado no ServletContext e atraves do objeto ServletContextAttributeEvent podemos obter informacoes como: o nome do atributo adicionado, o seu valor, o objeto em que o evento inicialmente ocorreu e ainda o proprio ServletContext.void attributeRemoved(ServletContextAttributeEvent): este metodo e chamado sempre