INTRODUÇÃO À TECNOLOGIA SERVLETS

Documentos relacionados
INTRODUÇÃO À TECNOLOGIA SERVLETS

INTRODUÇÃO À TECNOLOGIA SERVLETS

PROGRAMAÇÃO SERVIDOR RECURSOS ADICIONAIS EM SISTEMAS WEB DOS SERVLETS. Prof. Dr. Daniel Caetano

PROGRAMAÇÃO SERVIDOR MIDDLEWARE JDBC: USANDO O JAVA DB EM SISTEMAS WEB. Prof. Dr. Daniel Caetano

NOVIDADES DO JAVA PARA PROGRAMADORES C

PROGRAMAÇÃO I INTRODUÇÃO À ORIENTAÇÃO A OBJETOS

Unidade 6: Java Server Pages Prof. Daniel Caetano

Tutorial 1 Configuração Apache Tomcat no NetBeans 8.0 (passo a passo)

INTRODUÇÃO AO JAVA PARA PROGRAMADORES C

Surgindo em 1997 a API Java Servlet proporciona ao desenvolvedor a possibilidade de adicionar conteúdo dinâmico em um servidor web usando a

Unidade 12: Uso de Sessão e DAO e Servlets

Unidade 11: Programando Swing com o NetBeans Prof. Daniel Caetano

Linguagem de Programação II Programação Orientada a Objetos. Ambientes de Programação

PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB RETOMANDO: JAVA E CLASSES. Prof. Dr. Daniel Caetano

PROGRAMAÇÃO PARA INTERNET RICA AJAX

Procedimento de instalação do Oracle EBS da Mundial

Desenvolvimento Web III. Prof. Felippe Scheidt

Programa CIEE de Educação a Distância

Instalação Wiser Discovery Sistema Operacional Windows

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA TUTORIAL OPEN WATCOM: CRIANDO O PRIMEIRO PROGRAMA

Instalação JDK. Joyce França. Professora de Ciência da Computação - IFNMG

JavaScript Fundamental e Servlet Fundamental

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA TUTORIAL OPEN WATCOM: CRIANDO O PRIMEIRO PROGRAMA

Escrito por Lisiane Batista Neitzke Sex, 14 de Outubro de :57 - Última atualização Qua, 25 de Junho de :18

Objetos e Componentes Distribuídos: EJB

A ferramenta wiki dentro da Plataforma Moodle funciona como um aplicativo que permite a redação e edição coletiva de textos e hipertextos.

Instalação JDK 10/03/2017

Continuação... Criando a Interface e adiante

EXERCÍCIOS DE REVISÃO DE CONTEÚDO QUESTÕES DISSERTATIVAS

1. Execute o instalador do ambiente. Será exibida a tela do assistente para instalação.

PROGRAMAÇÃO SERVIDOR SESSÃO E LOGIN EM SISTEMAS WEB. Prof. Dr. Daniel Caetano

Apostila - Desenvolvimento web com PHP

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

Manual de instalação do Microsoft SQL Server 2008 R2 Express no Windows 10

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA TUTORIAL OPENWATCOM: CRIANDO O PRIMEIRO PROGRAMA

TUTORIAL DE INSTALAÇÃO E USO DO OWL-S COMPOSER 3.0 utilizando o Eclipse Galileo Modelling Tools

Figura 1: Formato de Requisição HTTP

Configuração do GIGAERP Integrado ao GIGA e-doc.

Continuação... Criando a Interface e adiante

AULA 02 DADOS PRIMITIVOS E EXERCÍCIOS

SERVLETS. Introdução UNIDADED

Figura 1: Eclipse criação de um Dynamic Web Project

Microsoft Word 2010 NORMA ABNT para Trabalhos Acadêmicos Conceitos Básicos

Como configurar o computador para impressão de etiquetas e formulário de 40 colunas

Manual do Usuário. Cartosoft - Recibo de Envio de Selos Eletrônicos

Configurações do Servidor Escola

PROGRAMAÇÃO I A LINGUAGEM DE PROGRAMAÇÃO JAVA I

FAQ SPED Auditor. SPED Auditor FAQ. Perguntas Frequentes QUIRIUS Soluções Fiscais QUIRIUS Soluções Fiscais 1

Introdução a Programação Web com PHP

Configuração do GIGAERP Integrado ao GIGA e-doc.

Conexão com Banco de Dados

JAVA. Professor: Bruno Toledo

TUTORIAL DE INSTALAÇÃO E USO DO OWL-S COMPOSER utilizando o Eclipse Galileo Modelling Tools

Unidade 12: Programação de Banco de Dados com Java Prof. Daniel Caetano

Dreamweaver CC_15x21.indd 1 06/04/ :04:22

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II. Prof. Dr. Daniel Caetano

DESENVOLVIMENTO DE SISTEMAS WEB. Lista de Exercícios AV1-01. Luiz Leão

Servlets. Conceito. Pequenos programas escritos em Java. Rodam dentro de um contêiner web. Atendem a requisições de aplicações cliente.

Procedimentos para Atualização Sisloc

SGCD 2.0 Sistema Gerenciador de Conteúdo Dinâmico

USANDO CLIENT OWNCLOUD

Objetos e Componentes Distribuídos: EJB e CORBA

MANUAL DO PROFESSOR AMBIENTE VIRTUAL DE APRENDIZAEGEM

Catálogo em Rede. Sumário

Utilização do Sistema FaciliTiss. Guia de Resumo de Internação

WINTHOR UPGRADE VERSÃO 2

Uma sintaxe universal para identificar os recursos. No sistema REST, cada recurso é unicamente direcionado através da sua URI.

Desenvolvimento WEB II. Professora: Kelly de Paula Cunha

Configurador do JBOSS. TOTVS Datasul 11. Alerta

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II. Prof. Dr. Daniel Caetano

Conteúdo Como gerar os arquivos pelo WinMFD da Bematech?... 3 Como saber a data do arquivo?... 9 Como copiar os arquivos gerados para o PENDRIVE:...

TUTORIAL DE UTILIZAÇÃO DO OWL-S COMPOSER W. Trabalho de Conclusão de Curso Aluno: Adriano Novais Queiroz Orientadora: Prof.ª Daniela Barreiro Claro

PORTAL CORPORATIVO. Manual do usuário

Unidade 2: Estruturas de Controle Parte 1 - Scanner e Estrutura IF Prof. Daniel Caetano

Exercitando a Programação com PHP

MINI-CURSO PROGRAMAÇÃO COM JAVA - 2

Resolução de Problemas Passo-à-passo

Karen Frigo Busolin Abril/2011

MANUAL DE PUBLICAÇÃO NO PORTAL CAMPUS MATÃO

Ponto Secullum 4 Cópia de segurança

Manual de Utilização

Procedimentos para Instalação do Sisloc (Estação de Trabalho) versão

Apostila - Desenvolvimento web com PHP

ALGORITMOS. Professor: Diego Oliveira. Aula 06 - Tipos Primitivos de Dados

PROGRAMA ESPECIAL DE FORMAÇÃO PEDAGÓGICA DE PROFESSORES PARA EDUCAÇÃO PROFISSIONAL MANUAL DO AMBIENTE VIRTUAL DE APRENDIZAGEM (AVA) TUTOR

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

Manual De Utilizador. Minha Primeira Aplicação e Página. Integrated Government Resources Planning NOSI NÚCLEO OPERACIONAL DA SOCIEDADE DE INFORMAÇÃO

Integração Java x Flex

Aviso. O conteúdo deste documento é de propriedade intelectual exclusiva da GVDASA Sistemas e está sujeito a alterações sem aviso prévio.

Guia de instalação do REIS

AULA 5: BrOffice Writer Mala Direta e Etiqueta. Ao final dessa aula, você deverá ser capaz de:

BROFFICE MALA DIRETA CONFIGURAÇÃO Por Erico R. Silva, junho 2007

Instalação oast.exe executar procurar C:\Arquivos de Programas C:\Program Files Instalar

A composição de uma Java Server Pages (Diretivas, Elementos de Script e Objetos Implícitos)

INTRODUÇÃO A PROGRAMAÇÃO PARA WEB

Criando site. Tutorial Webnode

Aula 03 - Projeto Java Web

Transcrição:

PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB INTRODUÇÃO À TECNOLOGIA SERVLETS Prof. Dr. Daniel Caetano 2013-2

Objetivos Apresentar o conceito aplicações orientada a serviços via web Apresentar o papel dos contentores Java Capacitar para a construção de Aplicações Web simples

Material de Estudo Material Notas de Aula Apresentação Material Didático - Acesso ao Material http://www.caetano.eng.br/ (Prog. Servidor Web - Aula 2) http://www.caetano.eng.br/ (Prog. Servidor Web - Aula 2) Java: Como Programar (6ª Edição) Páginas 928 a 948

ARQUITETURA WEB E SERVIÇOS

Arquitetura Web e Serviços Na primeira aula, vimos esse sistema: REQUEST Cliente RESPONSE Servidor

Arquitetura Web e Serviços Quem é responsável por gerar a request? O computador cliente Navegador Outro programa qualquer Quem é responsável por gerar a response? O computador servidor Programa servidor O servidor presta um serviço ao cliente

Arquitetura Web e Serviços O cliente: navegador Requisições são geradas quando Digitamos uma nova URL / Clicamos em um link Enviamos um formulário Enviamos uma consulta AJAX

Arquitetura Web e Serviços O servidor: aplicativo em computador 24/7 Este aplicativo é composto de serviços Serviço recebe requests e devolve responses Apenas quando uma requisição chega ele atua É este tipo de aplicativo, baseado em serviços, que iremos desenvolver!

Arquitetura Web e Serviços Faz sentido um servidor dedicado a um único serviço simples? A resposta é: depende! Depende de quê? Da demanda sobre estes serviços Do processamento exigido pelos serviços Dos requisitos de segurança e qualidade (SLA) É comum ter servidores web e servidores de banco de dados dedicados Se a demanda de um serviço não é grande, em geral não faz sentido ter infra exclusiva...

Arquitetura Web e Serviços Vários serviços web na mesma máquina Comum No caso do Java, estes pequenos serviços são chamados de servlets Agora... que tal centralizar funções comuns? Ex.: Gerenciamento de Conexões Esse é o papel do contentor Java

Arquitetura Web e Serviços Existem vários contentores Java GlassFish TomCat TomCat + JBoss Dentre outros... Neste curso, usaremos o GlassFish É o mais completo É o padrão sugerido pela Oracle

O CONTENTOR JAVA E O CICLO DE VIDA

O Contentor Java O contentor Java também é conhecido como servidor de aplicações Java Gerencia a execução de serviços web Java Disponibilizar infraestrutura necessária para estes serviços Permite a comunicação com outros componentes Java e aplicações

O Contentor Java Servidor de Aplicações - Funcionamento básico: 1. Aguarda pelas requests 2. Repassa a request para o servlet correto 3. Recebe a response do servlet 4. Devolve a response p/ cliente que enviou a request Ou seja, ele é responsável por gerenciar as conexões (dentre outras coisas)

O Contentor Java Resumidamente...

O Contentor Java O servidor de aplicativos não faz só isso... Dentre outras coisas... Ele também cuida do ciclo de vida do servlet 1. Quando necessário, inicia o Servlet 2. Coloca este Servlet no estado ativo 3. Finaliza o Servlet quando não é mais necessário

Ciclo de Vida do Servlet Invocação Resumidamente... init() Quando necessário service() Aguardando conexões destroy() Quando não é mais necessário

SERVLETS NO NETBEANS

Criando um Servlet Iniciaremos criando um projeto

Criando um Servlet Escolha o tipo: Java Web e Aplicação Web

Criando um Servlet Escolha o tipo: Java Web e Aplicação Web Java ATENÇÃO Caso apareça uma janela solicitando autorização para acesso, responda Permitir

Criando um Servlet Dê um nome ao seu projeto: ex.: WProjeto1

Criando um Servlet Dê um nome ao seu projeto: ex.: WProjeto1 Nomes de projeto devem a) Começar com letra maiúscula b) Não ter espaços c) Não usar acentos ou caracteres especiais d) Ex.: WProjeto1 e) SUGESTÃO: Inicie projetos Web com a letra W

Criando um Servlet Dê um nome ao seu projeto: ex.: WProjeto1

Criando um Servlet Selecione o contentor: GlassFish Server

Criando um Servlet Este é o endereço da aplicação: /WProjeto1

Criando um Servlet Clique em Finalizar ATENÇÃO Caso apareça uma janela solicitando autorização para acesso, responda Permitir

Criando um Servlet Esta tela vai aparecer... Há campos novos!

Criando um Servlet Execute o projeto e veja o que ocorre! EXECUTE O PROJETO ATENÇÃO Caso apareça uma janela solicitando autorização para acesso, responda Permitir

Criando um Servlet Por padrão, o index.jsp é executado

Criando um Servlet Vamos construir um formulário...

Criando um Servlet Vamos construir um formulário...

Criando um Servlet Vamos construir um formulário... Isso irá gerar uma request para um aplicativo web chamado Imc. Precisamos criá-lo!

Criando um Servlet Clique com o botão direito em Pacotes de Código Fonte

Criando um Servlet E selecione Novo > Pacote Java...

Criando um Servlet Agora dê um nome ao pacote: imc

Criando um Servlet Agora dê um nome ao pacote: imc Nomes de PACOTES devem a) Começar com letra minúscula b) Não ter espaços c) Não usar acentos ou caracteres especiais d) Ex.: imc

Criando um Servlet E clique em Finalizar

Criando um Servlet Agora clique com o botão direito no pacote imc e selecione Novo > Servlet...

Criando um Servlet Agora dê um nome ao servlet: Imc

Criando um Servlet Agora dê um nome ao servlet: Imc Um SERVLET é uma CLASSE, então... a) Começar com letra maiúscula b) Não ter espaços c) Não usar acentos ou caracteres especiais d) Ex.: Imc

Criando um Servlet Agora dê um nome ao servlet: Imc Este nome deve ser o MESMO usado no campo action do FORM!

Criando um Servlet E clique em Próximo

Criando um Servlet MARQUE a opção Adiciona informação ao descritor

Criando um Servlet MARQUE a opção Adiciona informação ao descritor Nomes para acesso ao Servlet

Criando um Servlet E clique em Finalizar

Criando um Servlet Isso vai criar uma série de arquivos e abrir o servlet na área de edição... O primeiro é o de configuração:

CONFIGURANDO O SERVLET

Configurações do Servlet O arquivo de configuração é chamado web.xml... Algumas vezes existem vários deles O que nos interessa está na pasta web-inf Clique duas vezes neste arquivo...

Configurações do Servlet A aba Geral serve para indicar a descrição do SISTEMA, além de indicar o timeout (veremos isso depois)

Configurações do Servlet A aba Servlets configura itens importantes

Configurações do Servlet A ordem de inicialização

Configurações do Servlet O nome do Servlet

Configurações do Servlet A classe do Servlet (pode ser trocada!)

Configurações do Servlet E o nome de acesso do Servlet

Configurações do Servlet Essas e outras configurações podem ser feitas diretamente pela aba XML... Mas pelo NetBeans é mais conveniente!

PAUSA PARA O CAFÉ

VOLTANDO A EDITAR O SERVLET

Criando um Servlet O outro arquivo importante é o arquivo do Servlet, neste caso o Imc.java.

Limpando a área Vamos apagar os comentários do NetBeans

Limpando a área Vamos esconder código desnecessário

Entendendo o Servlet Observe que o Servlet extends HttpServlet

Entendendo Este o é Servlet o trecho que Vamos entender a estrutura mais nos interessa!

Entendendo o Servlet Vamos entender a estrutura Não mexa aqui!

Entendendo o Servlet Vamos entender o funcionamento Quando uma request chega ao contentor, ela é repassada para esse método, juntamente com uma reponse, onde armazenaremos a saída

Entendendo o Servlet Vamos entender o funcionamento A primeira coisa feita é a configuração do objeto out, que usaremos para imprimir a saída

Programando o Servlet Aqui é onde escreveremos o nosso código Temos de imprimir um HTML!

Programando o Servlet Acompanhe o professor!

Programando o Servlet Acompanhe o professor! Execute e veja o que ocorre!

Programando o Servlet Falta fazer o cálculo: IMC = PESO / (ALTURA * ALTURA) Mas antes... É preciso pegar os parâmetros na request... Pegar... Parâmetro... Da request... request.getparameter( nome ) Os nomes são peso e altura (do form!) NOTA: as informações da request estão sempre no formato String!

Programando o Servlet Execute e veja o que acontece!

Programando o Servlet Execute e veja o que acontece!

Programando o Servlet Execute e veja o que acontece! OPA! Não pulou linha! a) Estamos imprimindo HTML b) Onde está o <p> e o </p>???

Programando o Servlet Execute e veja o que acontece!

Programando o Servlet Execute e veja o que acontece!

Programando o Servlet Antes de fazer os cálculos, porém... Temos que converter estas Strings para números reais, do tipo double Existe um método pronto para isso, na classe Double... Ele se chama valueof NOTA: Use PONTO para indicar peso e altura Certo: 1.70 Errado: 1,70

Programando o Servlet Execute e veja o que acontece!

Programando o Servlet Execute e veja o que acontece!

Programando o Servlet Podemos melhorar um pouco mais...

Programando o Servlet Podemos melhorar um pouco mais...

Programando o Servlet O programa tem problemas com, nos números? Experimente! Corrija substituindo: Por isso:

Programando o Servlet Para imprimir mensagens de acordo com o resultado, experimente acrescentar o código abaixo!

Programando o Servlet O servlet ainda capota quando um texto é digitado nos campos numéricos! Experimente! Corrija isso acrescentando o catch abaixo!

ATIVIDADE ESTRUTURADA

Orientação Atividades Estruturadas Esta disciplina tem Atividades Estruturadas Elas serão disponibilizadas futuramente A primeira consiste em uma pesquisa (leitura e redação) A segunda consiste em compreender e modificar um sistema funcional Aguardem maiores informações!

ATIVIDADE

Programando o Servlet Modifique o Servlet Criado: Para imprimir mensagens diferentes para cada nível de IMC: < 18.5 => Cuidado! Abaixo do peso! 18.5 <= imc < 25.0 => Parabéns! Peso ideal! 25.0 <= imc < 30.0 => Atenção! Acima do peso! Imc >= 30.0 => Cuidado! Está obeso!

CONCLUSÕES

Resumo As aplicações Web funcionam como pequenos programas que rodam no servidor Estes programas, em Java, são feitos com a tecnologia Servlets Servlet recebe request e devolve response TAREFA: Trabalho A Ainda não estou seguro com esses tais Servlets! Na próxima aula, exercitaremos mais... E veremos algumas novidades!

PERGUNTAS?