Curso de Análise e Desenvolvimento de Sistemas Disciplina: Linguagens Web Servidor Prof. Gilmar Caiado Material de Apoio 1 – 4o Período – 17/03/2009 Java EE - Servlets - Parte 1 ● Bibliografia básica: ● Sierra & Bates: Use a cabeça: Servlets & JSP. Editora Altabooks, Segunda Edição. ● Links úteis: ● Java EE 5 Tutorial: http://java.sun.com/javaee/5/docs/tutorial/doc/ ● Java EE 5 API: http://java.sun.com/javaee/5/docs/api/ Uso dos Servlets: • utilizado para prover a funcionalidade de controle em um servidor Web, atuando na comunicação cliente servidor em um ambiente de redes, com o auxílio do protocolo HTTP – RFC 2616 e TCP/IP; • Uma aplicação Web Servidor em Java EE é composta pelos seguintes componentes – ver exemplo em Aula 2 - Primeiros Passos.pps: • HTML: lado cliente da aplicação, necessita da implementação de um formulário HTML para o trânsito de parâmetros cliente-servidor; • Servlet: arquivo .java, sendo uma abstração do protocolo HTTP para o processamento de dados vindos do lado cliente. Normalmente atua como controlador da aplicação Web, sendo responsável por atuar como intermediário em relação às camadas de visualização (navegador) e modelo (acesso a lógica de negócios e bancos de dados); • XML: arquivo web.xml, residente no diretório WEB-INF da aplicação Web. É conhecido como deployment descritor, sendo este um mapeamento necessário ao servidor ou container Web para reconhecimento das URLs e respectivas classes java (servlets), dentre outras funcionalidades; Arquitetura da Aplicação: Resumo da Comunicação – maiores detalhes, observar os 4 primeiros capítulos do livro Use a cabeça: Servlets & JSP.: 1 • O navegador envia ao container ou servidor web, o arquivo HTML contendo os parâmetros da requisição; • o container, a partir da URL apresentada, recupera os dados da requisição GET ou POST e, a partir do mapeamento apresentado no deployment descriptor, encontra o servlet desejado; • é criada uma thread do servlet – java.servlet.http.HttpServlet, para atender à requisição do cliente, juntamente com dois objetos request e response, respectivamente, java.servlet.http.HttpServletRequest e java.servlet.http.HttpServletResponse; • • os parâmetros de requisição – objeto request – são fornecidos ao servlet; • o servlet, por sua vez, executa os métodos doGet ou doPost a partir da chamada do método service(), onde os dois primeiros métodos retornam uma saída para o objeto response, sendo esta um HTML retornado ao cliente, com a resposta sendo apresentada no navegador APIs Servlet: • • • java.servlet.Servlet java.servlet.GenericServlet java.servlet.http.HttpServlet Ciclo de Vida de um Servlet: Métodos: • • • • • init(): inicialização do servlet destroy(): destruição do servlet service(): método resposável por chamar doGet() e/ou doPost() doGet(): implementação do método GET doPost(): implementação do método POST Prática: 1. Pesquisar sobre as APIs java.servlet.http.HttpServletRequest e java.servlet.http.HttpServletResponse e seus respectivos métodos, para ver o potencial dos objetos request e response que são apresentados para processamento do servlet. 2