Java para WEB. Servlets



Documentos relacionados
Java para Desenvolvimento Web

Aula 4. Objetivos. Conteúdo dinâmico na internet.

Tencologia em Análise e Desenvolvimento de Sistemas Disciplina: WEB I Conteúdo: WEB Container Aula 04

Java II. Sérgio Luiz Ruivace Cerqueira

Criando e Entendendo o Primeiro Servlet Por: Raphaela Galhardo Fernandes

PadrãoIX. Módulo II JAVA. Marcio de Carvalho Victorino. Servlets A,L,F,M

Programação Na Web. Servlets: Como usar as Servlets. Agenda. Template genérico para criar Servlets Servlet 2.4 API

Java na WEB Servlet. Sumário

Curso de Java. Geração de Páginas WEB. TodososdireitosreservadosKlais

Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP

Prof. Roberto Desenvolvimento Web Avançado

Arquitetura de Aplicações JSP/Web. Padrão Arquitetural MVC

Java Server Pages. Arquitectura de uma aplicação distribuída em Internet. Figura 1 Modelo 2

Arquitetura de uma Webapp

Desenvolvimento Web TCC Turma A-1

Fundamentos de Servlets. Conceitos e ciclo de vida Classes e Interfaces da API Exemplos de Servlets

Desenvolvimento WEB II. Professora: Kelly de Paula Cunha

Aula 03 - Projeto Java Web

Programação Web Aula 12 - Java Web Software

Associação Carioca de Ensino Superior Centro Universitário Carioca

Desenvolvimento Web com JSP/Servlets

Autenticação e Autorização

Web Browser como o processo cliente. Servidor web com páginas estáticas Vs. Aplicações dinâmicas para a Web:

Programação II Programação para a Web. Christopher Burrows

Introdução. Servlet. Ciclo Vida. Servlet. Exemplos. Prof. Enzo Seraphim

Prática Sobre Servlets e JSP

J2EE. Exemplo completo Utilização Servlet. Instrutor HEngholmJr

Introdução a Servlets e JSP. Prof. Samuel Martins samuellunamartins at gmail dot com Faculdade São Miguel

UNIDADE II JAVA SERVLETS

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas)

Servlets e Applets, funcionamento e comparativo.

Prática em Laboratório N.02 Criando um serviço Web via NetBeans

Programação Web. Professor: Diego Oliveira. Conteúdo 02: JSP e Servlets

J550 Segurança e Controle de erros

JSP: JAVA SERVER PAGES

Arquiteturas de Aplicações Web. Leonardo Gresta Paulino Murta

Java II. Sérgio Luiz Ruivace Cerqueira

TUTORIAL JSP & SERVLET

INTRODUÇÃO À TECNOLOGIA SERVLETS

JSP: JAVA SERVER PAGES

Criação de uma aplicação usando Servlets

Como criar um EJB. Criando um projeto EJB com um cliente WEB no Eclipse

Aplicações de Linguagem de Programação Orientada a Objeto

Tutorial. Começando a Criar Aplicativos SMS

Servlets & JSP. Prof. Ramon Chiara

Desenvolvimento Web TCC Turma A-1

Alfamídia Programação: Java Web

Servlets. João Carlos Pinheiro. Julho / 2005

programação de páginas de conteúdo dinâmico

Java ME Java Platform, Micro Edition Java SE Java Platform, Standard Edition Java EE Java Platform, Enterprise Edition

20/08/14 JAVA SERVLETS CONCEITOS CONTEÚDO ARQUITETURA DE UMA APLICAÇÃO WEB ARQUITETURA DA APLICAÇÃO WEB

Java Servlets. Leonardo Gresta Paulino Murta

Material de Apoio Profº Alan Cleber Borim

Tecnologias para Web

Desenvolvimento de Sistemas Corporativos Aula 1.5 Introdução a Servlets. Prof. Bruno Moreno

Executando comandos do Sistema Operacional em uma aplicação WEB Java

Prof. Fellipe Aleixo

JSF - Controle de Acesso FERNANDO FREITAS COSTA

Tecnologias Web. Java Servlets

Acessando um Banco de Dados

Conhecendo um pouco mais o servidor Apache TomCat

Programando em PHP. Conceitos Básicos

Servlets API. Aplicações web usando recursos da Servlets API no desenvolvimento de aplicações web. Professor J. c o l u n a

Javascript Exemplos Objetos

J550. Helder da Rocha

JSP e Servlet Princípio de MVC

Programação WEB (JSP + Banco Dados) Eng. Computação Prof. Rodrigo Rocha

Programação Na Web. Sessão II. Índice. Visão geral da API Sessão. Obter dados sobre uma sessão. Extrair informação sobre uma Sessão

Servlets, JSPs e Java Beans

Unidade 14: Web Services Prof. Daniel Caetano

J550. Apache Struts. Helder da Rocha

Scriptlets e Formulários

Jsp, Servlets e J2EE

Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões. Prof. MSc. Hugo Souza

Minicurso de MVC web com Struts. Felipe F Nascimento felipenasc@inf.puc-rio.br

Introdução. Entendendo os Controles. Definindo um controle. Introdução MOCKDOMAIN() Testando uma classe de domínio mockdomain

Omega Tecnologia Manual Omega Hosting

Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate

Tutorial Jogo da Velha WEB

Mini-Tutorial. Como criar relatórios Java para Web com JasperReports e ireport por Roberto J. Furutani 20/07/2005

DWR DIRECTED WEB REMOTING

Java Beans e Servlets

Manual do Painel Administrativo

Objetos Implícitos. Conceito. Instanciados pelo próprio contêiner. Disponíveis em quaisquer páginas JSP.

Java Server Pages. O código HTML pode indicar o método de arranque do servlet gerado por um JSP : doget ou dopost.

TUTORIAL SPRING SECURITY PROGRAMAÇÃO COM FRAMEWORKS Responsáveis: Ana Luíza Cruvinel, Maikon Franczak e Wendel Borges

PROGRAMAÇÃO SERVIDOR WEBSERVICES EM SISTEMAS WEB. Prof. Dr. Daniel Caetano

Leonardo Gresta Paulino Murta

Orientada a serviços: JAX-WS SOAP API

Transcrição:

Servlets

Servlets são classes Java que são instanciadas e executadas em associação com servidores Web, atendendo requisições realizadas por meio do protocolo HTTP.

Servlets é a segunda forma que veremos para criação de páginas dinâmicas em Java além da tecnologia já vista JSP.

A classe HttpServlet do pacote javax.servlet é a classe que possibilita o uso de classes java através do protocolo Http. A interface Servlet é a que define exatamente como uma servlet funciona, mas não é o que vamos utilizar agora uma vez que ela possibilita o uso de qualquer protocolo baseado em requisições e respostas, e não especificamente o HTTP.

Para criarmos uma classe java que receba requisições, fazemos isso criando uma classe qualquer que estenda a classe HttpServlet e então sobrescrevemos o método doget.

@Override protected void doget (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { }...

Servlets são capazes de receber requisições e enviar respostas através das Classes HttpServletRequest e HttpServletResponse.

Então, o método da Servlet poderia ter algo como: @Override protected void doget (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter out = response.getwriter(); out.println("<html>"); out.println("<body>"); out.println( Olá Mundo"); out.println("</body>"); out.println("</html>"); }

Mapeando uma Servlet A servlet é acessada como uma página JSP qualquer, porém para isso é necessário definir uma configuração para que o servidor saiba qual servlet ele deve acessar, esse mapeamento é feito pelo arquivo web.xml.

Web.xml <?xml version="1.0" encoding="utf-8"?> <web-app id="webapp_id" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <display-name> WebApp_NAME</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>

O Mapeamento de uma servlet se dá pela tag: <servlet> <servlet> <servlet-name>primeiraservlet</servlet-name> <servlet-class>br.com.cd.oimundo</servlet-class> </servlet>

Após isso indique por qual URL sua Servlet será acessada: <servlet-mapping> <servlet-name>primeiraservlet</servlet-name> <url-pattern>/oimundo</url-pattern> </servlet-mapping>

A tag <url-pattern> Além de mapear uma URL para acessar uma servlet é póssivel fazer com que várias URL s acessem a mesma servlet. <url-pattern>/oimundo/*</url-pattern> <url-pattern>*.jsp</url-pattern>

Prática Construa uma Servlet que exiba uma página HTML onde contenha um título e a mensagem de Boas Vindas entre tags <h1>.

Prática Construa uma página que tenha um formulário e faça uma servlet que some os dois valores digitados nesse formulário.

Outros Métodos de Servlet doget = recebe requisições GET dopost = recebe requisições POST service = recebe ambas requisições

Dentro da classe servlet é possível utilizar todos os objetos até agora visto como request, response, session, Cookies e etc.

Erros Comuns em Servlets

Esquecer da barra inicial no URL pattern: <url-pattern>oi</url-pattern>

Digitar errado o nome do pacote da sua servlet: <servlet-class>br.ac.servlet.oimundo</servlet-class>

Esquecer de colocar o nome da classe no mapeamento da servlet <servlet-class>br.ac.servlet</servlet-class>

Prática Construa uma servlet que receba requisições para cadastro de um Contato (Bean), coloque esse contato em uma lista na sessão e crie uma página que liste todos os contatos da sessão.

Tratamento de Exceções em Servlets

É possível tratar erros em servlets através da configuração do arquivo web.xml.

Tratando erro da classe Exception <error-page> <exception-type>java.lang.exception</exception-type> <location>/erro.html</location> </error-page>

Tratar erros de resposta Http como 404 (Página inexistente) <error-page> <error-code>404</error-code> <location>/paginanaoencontrada.html</location> </error-page>

Prática Crie uma servlet que trate erros de java.lang.arithmeticexception, java.lang.numberformatexception e de página inexistente.

Métodos init e destroy O método init é executado sempre que uma servlet é executada (compilada) e o método destroy sempre quando essa mesma é destruída.

public void init(servletconfig config) throws ServletException { } super.init(config); log("iniciando a servlet");

public void destroy() { super.destroy(); log("destruindo a servlet"); }

Prática Construa uma servlet que conte quantas vezes o site foi acessado e exiba em uma página essa informação.

SERVLETS 3.0

Nova especificação da API de Servlets, disponível em alguns servidores já como GlassFish, Jetty e Tomcat 7.

A nova API trás algumas melhorias e correções. @WebServlet("/oiMundo") public class OiMundo extends HttpServlet {... }

Exercícios Crie uma servlet que efetue o Login em sua aplicação, utilizando Beans e Sessão. Crie um cadastro de Contatos onde ao salvar um contato, esta ação seja feita por uma servlet, salvando esses em um arquivo. Crie uma servlet que controle o acesso do usuário na aplicação, redirecionando ele para página de login quando o mesmo não estiver na sessão.