Aula 8: Servlets (III)

Tamanho: px
Começar a partir da página:

Download "Aula 8: Servlets (III)"

Transcrição

1 Aula 8: Servlets (III) Diego Passos Universidade Federal Fluminense Técnicas de Projeto e Implementação de Sistemas II Diego Passos (UFF) Servlets (III) TEPIS II 1 / 30

2 Última Aula Respostas de requisições. Inicialização de Servlets. Filtros. Diego Passos (UFF) Servlets (III) TEPIS II 2 / 30

3 Nesta Aula Concorrência. Cookies. Sessões. Conteúdo não-html. Diego Passos (UFF) Servlets (III) TEPIS II 3 / 30

4 Concorrência Relembrando o ciclo de vida típico de um Servlet: Primeira requisição ao Servlet chega ao container. Container verifica que não possui uma instância ativa daquele Servlet. Container instancia classe do Servlet. Container chama o método init() sobre o objeto recém instanciado. Container chama o método service() passando a requisição. Para as próximas requisições, o mesmo objeto pode ser reutilizado. Em outras palavras, pode haver múltiplas chamadas simultâneas ao método service(). Se o Servlet acessa/atualiza informações compartilhadas nestas múltiplas chamadas, pode haver condições de corrida. Diego Passos (UFF) Servlets (III) TEPIS II 4 / 30

5 Evitando Condições de Corrida Se o Servlet usa apenas variáveis locais ao método service, não há problema. Variáveis locais fazem parte da pilha de execução de uma thread específica. Por definição, não são compartilhadas. No entanto, Servlets são geralmente mais complexos. Acessam ou modificam informações persistentes. Acessam variáveis da própria classe. Acessam métodos de outras classes que podem não ser thread-safe. Diego Passos (UFF) Servlets (III) TEPIS II 5 / 30

6 Evitando Condições de Corrida (II) Antes da versão 2.4, a API de Servlets definia a interface SingleThreadModel. Esta interface não definia nenhum método. Se um Servlet implementasse a interface, containers não chamavam o método service de forma paralela. Isso reduzia os problemas de condição de corrida. Mas não os solucionava completamente. Atributos de sessão ou contexto ainda podiam sofrer alterações concorrentes. Resultado: a interface foi marcada como deprecated a partir da versão 2.4. Diego Passos (UFF) Servlets (III) TEPIS II 6 / 30

7 Evitando Condições de Corrida (III) Solução mais geral: blocos do tipo synchronized. Os blocos synchronized são uma das maneiras de se definir uma região crítica em Java. Define-se um objeto sob o qual a sincronização deve ser realizada (em geral, o próprio Servlet). Se uma linha de código dentro de um bloco sincronizado está atualmente em execução, outras threads são proibidas de entrar em qualquer bloco sincronizado sob o mesmo objeto. synchronized(this) { if (req.getparameter("withdraw")!= null && amt < act.balance) act.balance -= amt; if (req.getparameter("deposit")!= null && amt > 0) act.balance += amt; } Diego Passos (UFF) Servlets (III) TEPIS II 7 / 30

8 Cookies Cookies são um mecanismo que permite que uma aplicação ou site armazene dados no cliente. Quantidade de dados que podem ser armazenados é pequena. Browsers são obrigados a suportar cookies de, no máximo, 4KB. Cada site (domínio) pode definir 50 cookies. No total, cerca de Uso mais comum para os cookies: Armazenar informação de identificação do usuário. Algumas vezes para autenticação, outras apenas para manter preferências do usuário. Em ambos os casos, é comum fazer tracking de sessão. Diego Passos (UFF) Servlets (III) TEPIS II 8 / 30

9 Criando Cookies Do ponto de vista do servidor, cookies são criados incluindo um cabeçalho na resposta HTTP. Exemplo: HTTP/ OK Content-type: text/html Set-Cookie: name=value Set-Cookie: name2=value2; Expires=Wed, 09 Jun :18:14 GMT Sempre que o browser acessa páginas do mesmo domínio, cookie é enviado nas requisições: GET /index.html HTTP/1.1 Host: Cookie: name=value; name2=value2 Accept: */* Diego Passos (UFF) Servlets (III) TEPIS II 9 / 30

10 Estrutura de um Cookie Um cookie é um par do tipo <nome,valor>. Mas ele pode ter também atributos. Exemplos: Escopo do cookie: domínio ou caminho para o qual o cookie tem validade. Data de expiração: até quando o cookie é valido. Atributo Secure: cookie só deve ser transmitido através de conexões criptografadas. Atributo HttpOnly: cookie só é exposto através de HTTP (não permite, por exemplo, acesso do cookie via Javascript). Diego Passos (UFF) Servlets (III) TEPIS II 10 / 30

11 Cookies: Vulnerabilidades Cookies são muito usados na Internet atual. Mas podem ser explorados por uma série de tipos de ataque. Um dos tipos de ataque mais comuns é o roubo de cookies através de cross-site scripting. Exemplo: Suponha que determinado site utilize autenticação baseada em cookies. Ao final do processo de autenticação, site envia token armazenado em cookie. Suponha ainda que o site permita que usuários postem conteúdos com tags HTML a serem vistos por outros usuários. Usuário malicioso poderia postar o seguinte código: <a href="#" onclick="window.location= +escape(document.cookie); return false;">clique aqui!</a> Diego Passos (UFF) Servlets (III) TEPIS II 11 / 30

12 Cookies: Vulnerabilidades (II) Se o usuário clica no link malicioso, cookies da página atual são enviados para o servidor remoto. Atacante pode obter o token de autenticação e sequestrar a sessão do usuário legítimo. Outras informações sensíveis podem ser obtidas. Soluções: Sites que permitem a geração de conteúdo pelo usuário devem filtrar conteúdo HTML/Javascript. Sites podem usar o atributo HttpOnly nos seus cookies. Diego Passos (UFF) Servlets (III) TEPIS II 12 / 30

13 Manipulação de Cookies por Servlets Servlet poderia manipular cookies diretamente na forma de cabeçalho HTTP. Método setheader() para criar cookies. Método getheader() para ler cookies já criados. Mas a API de Servlets fornece ferramentas de alto nível para manipulação de cookies. Classe javax.servlet.http.cookie: representação de um cookie como classe Java. Método addcookie() da classe httpservletresponse. Método getcookie() da classe httpservletrequest. Diego Passos (UFF) Servlets (III) TEPIS II 13 / 30

14 Manipulação de Cookies por Servlets: Exemplo de Leitura Cookie[] cookies; cookies = req.getcookies(); String userid = null; for (int i = 0; i < cookies.length; i++) if (cookies[i].getname().equals("userid")) userid = cookies[i].getattribute(); Diego Passos (UFF) Servlets (III) TEPIS II 14 / 30

15 Manipulação de Cookies por Servlets: Criação Cookies enviados pelo cliente podem ser lidos a qualquer momento. Mas a criação de um cookie deve ser feita antes que qualquer conteúdo seja enviado na resposta. Quando um Servlet envia algum conteúdo de resposta, container está livre para fazer um flush do cabeçalho HTTP. Exemplo de criação de um cookie: String userid = createuserid(); Cookie c = Cookie("userid", userid); resp.addcookie(c); Diego Passos (UFF) Servlets (III) TEPIS II 15 / 30

16 Manipulação de Cookies por Servlets: Configurando o Domínio Por padrão, browsers armazenam o endereço exato da página que gerou um cookie. Cookie só é enviado para aquela página específica. Algumas vezes, no entanto, aplicações utilizam vários hosts (servidores) diferentes. Alguns para servir imagens, outros para autenticação,... Outras vezes, múltiplos servidores são usados para balanceamento de carga. Independente do motivo, pode ser desejável alterar o endereço associado a um cookie. Método setdomain(): altera o domínio associado a um cookie. Exemplo: String userid = createuserid(); Cookie c = Cookie("userid", userid); c.setdomain(".uff.br"); // Aceita "www.uff.br" e "mail.uff.br", mas não "www.midiacom.uff.br" resp.addcookie(c); Diego Passos (UFF) Servlets (III) TEPIS II 16 / 30

17 Manipulação de Cookies por Servlets: Configurando o Caminho Além do domínio, o caminho especificado em uma URL também filtra para onde são mandados cookies. Exemplo: Cookie gerado em É enviado para Mas não para Algumas vezes, deseja-se alterar a abrangência de um cookie. Método setpath(): altera o caminho associado a um cookie. Exemplo: String userid = createuserid(); Cookie c = Cookie("userid", userid); c.setdomain(".uff.br"); // Aceita "www.uff.br" e "mail.uff.br", mas não "www.midiacom.uff.br" c.setpath("/"); // Aceita qualquer página. resp.addcookie(c); Diego Passos (UFF) Servlets (III) TEPIS II 17 / 30

18 Track de Sessão Aplicações Web muitas vezes utilizam múltiplas páginas. Ou ao menos múltiplas requisições para uma mesma página. Geralmente, é preciso determinar que estas múltiplas requisições pertencem a um mesmo usuário. Mais especificamente, uma mesma sessão. Problema: a Internet é de maneira geral baseada em padrões e protocolos stateless. Interações são atômicas. Dispositivos não precisam guardar estado das comunicações. Simplifica processamento. Reduz consumo de memória. Mas como proceder quando é essencial manter o estado? Diego Passos (UFF) Servlets (III) TEPIS II 18 / 30

19 Track de Sessão: Soluções Comuns Soluções comuns para este problema incluem as seguintes abordagens: Incluir campos de formulário invisíveis nas páginas para enviar estado de uma requisição para outra. Escrita e leitura de cookies de sessão. Reescrita de URLs para manter informação sobre o estado da sessão. Soluções complicadas que requerem geração de código específico por parte do desenvolvedor. Diego Passos (UFF) Servlets (III) TEPIS II 19 / 30

20 Track de Sessão: Servlets A API de Servlets provê classes e métodos específicos para facilitar o track de sessão. Usuário pode utilizar a API para delegar tarefa de fazer o track da sessão para o servidor. Visão geral do funcionamento: Quando um cliente se conecta pela primeira vez a um Servlet, este pode criar um objeto do tipo javax.servlet.http.httpsession. Servlet pode guardar informação neste objeto e recuperá-la em acessos subsequentes. Depois de um tempo de inatividade, o objeto de sessão é destruído. Diego Passos (UFF) Servlets (III) TEPIS II 20 / 30

21 Track de Sessão: Servlets Método getsession(boolean): recupera ou cria um contexto para a sessão atual. Definido na classe HttpServletRequest. Verifica se há um contexto já definido para a sessão atual. Em caso afirmativo, retorna um HttpSession. Caso contrário, comportamento depende do valor do parâmetro: Se true, cria e retorna um objeto HttpSession. Se false, retorna null. Diego Passos (UFF) Servlets (III) TEPIS II 21 / 30

22 Track de Sessão: Como o Servidor Realiza Embora a ideia seja da API tornar o processo transparente, isso nem sempre é tão simples. Servidor precisa implementar um dos métodos tradicionais para manter estado da sessão. A primeira opção é quase sempre utilizar cookies. De forma transparante, quando o objeto HttpSession é criado, servidor inclui um cookie na resposta do servlet. Cookie contém um session ID. Session ID é usado para indexar o objeto HttpSession correspondente. Problema: cookies nem sempre são suportados pelo cliente. Alguns browsers podem não suportar. Usuário pode desabilitar. Diego Passos (UFF) Servlets (III) TEPIS II 22 / 30

23 Track de Sessão: Método encodeurl() Quando cookies não são suportados, servidor podem utilizar a reescrita de URL. Session ID é colocado no final da URL como um parâmetro. A cada requisição, servidor faz o parse da URL para extrair o ID. Neste caso, intervenção do desenvolvedor é necessária. Se o Servlet inclui alguma referência (URL) na resposta para o usuário, é preciso colocar o ID ao final (no formato correto). Isso é feito automaticamente através do método encodeurl(): out.println("<a href=\"" + res.encodeurl("/servlet/chckoutservlet") + "\">Check Out</a>"); Se não é preciso incluir o ID, o método retorna a string sem modificação. Para redirecionamentos (método sendredirect()), use encoderedirecturl(). Diego Passos (UFF) Servlets (III) TEPIS II 23 / 30

24 Track de Sessão: Obtendo Informação sobre a Sessão A informação mais básica que se pode obter sobre uma sessão é o ID. Método getid() do objeto HttpSession. O ID é uma String única para cada sessão. Em muitas aplicações, é suficiente. Aplicação pode usar o ID para indexar outras informações em repositórios próprios. Diego Passos (UFF) Servlets (III) TEPIS II 24 / 30

25 Track de Sessão: Obtendo Informação sobre a Sessão (II) A API permite também o armazenamento de objetos quaisquer no objeto de sessão. Métodos setattribute() e getattribute(). Similares aos métodos de mesmo nome usados para manipular o contexto do Servlet. Desenvolvedor especifica uma string (de livre escolha) como nome do atributo. Qualquer Servlet no mesmo servidor pode acessar os atributos da sessão. Exemplo: session.setattribute("myservlet.hitcount", new Integer(34));... Integer hits = (Integer)session.getAttribute("myservlet.hitcount"); Diego Passos (UFF) Servlets (III) TEPIS II 25 / 30

26 Track de Sessão: A Classe HttpSessionBindingListener O objeto de uma sessão pode ser destruído sem que os Servlets sejam avisados. Por exemplo, depois de um timeout. Neste caso, todos os objetos associados a sessão são também destruídos. Algumas vezes, é interessante executar algum código quando um determinado objeto é desassociado da sessão atual. Exemplo: Servlet abriu arquivo e o associou à sessão. É desejável fechar o arquivo. Para este tipo de situação, a API define a interface HttpSessionBindingListener. Diego Passos (UFF) Servlets (III) TEPIS II 26 / 30

27 Track de Sessão: A Classe HttpSessionBindingListener (II) Quando um objeto que implementa a esta interface é associado ou desassociado do objeto da sessão, métodos do objeto são chamados. Especificamente, dois métodos: valuebound(): objeto foi associado à sessão. valueunbound(): objeto foi desassociado da sessão. Dentro da implementação destes métodos, o desenvolvedor pode fazer quaisquer inicializações ou liberações de recurso necessárias. Diego Passos (UFF) Servlets (III) TEPIS II 27 / 30

28 Track de Sessão: A Classe HttpSessionBindingListener (III) class FileHolder implements HttpSessionBindingListener { FileReader file; public FileHolder(FileReader file) { } this.file = file; public FileReader getfile() { } return(file); public void valuebound(httpsessionbindingevent event) { } public void valueunbound(httpsessionbindingevent event) { } } file.close(); Diego Passos (UFF) Servlets (III) TEPIS II 28 / 30

29 Gerando Conteúdo não HTML Servlets HTTP podem gerar conteúdos de tipos quaisquer. Desde que possam ser definidos através de um cabeçalho MIME. Multi-Purpose Internet Mail Extensions. Cabeçalhos MIME são compostos de um tipo e um subtipo. Há vários valores padrão para diversos tipos de conteúdo; text/plain. image/png. video/mpeg.... Tipo deve ser definido com o método setcontenttype no objeto de resposta. Diego Passos (UFF) Servlets (III) TEPIS II 29 / 30

30 Gerando Conteúdo não HTML (II) Uma vez definido o tipo, basta que o Servlet envie os bytes desejados para o cliente. Há duas formas de fazer isso: Através de um objeto do tipo PrintWriter, obtido pelo método getwriter(). Para conteúdo ASCII. Através de um objeto do tipo ServletOutputStream, obtido pelo método getoutputstream(). Para conteúdo binário. Diego Passos (UFF) Servlets (III) TEPIS II 30 / 30

Sessões. Cookies HTTP Sessões Atributos de sessão

Sessões. Cookies HTTP Sessões Atributos de sessão Sessões Cookies HTTP Sessões Atributos de sessão O problema O protocolo HTTP não mantém estado entre transações distintas Ao término do atendimento da requisição, a conexão TCP é fechada pelo servidor

Leia mais

Java II. Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com

Java II. Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com Java II Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com Servlets Servlet Aplicação Java que é executada no servidor que estende a capacidade do servidor Web Alternativa Java para os scripts CGI Gerenciado

Leia mais

Programação para a Internet. Prof. M.Sc. Sílvio Bacalá Jr sbacala@gmail.com www.facom.ufu.br/~bacala

Programação para a Internet. Prof. M.Sc. Sílvio Bacalá Jr sbacala@gmail.com www.facom.ufu.br/~bacala Programação para a Internet Prof. M.Sc. Sílvio Bacalá Jr sbacala@gmail.com www.facom.ufu.br/~bacala A plataforma WEB Baseada em HTTP (RFC 2068) Protocolo simples de transferência de arquivos Sem estado

Leia mais

Java para Desenvolvimento Web

Java para Desenvolvimento Web Java para Desenvolvimento Web Servlets A tecnologia Servlet foi introduzida pela Sun Microsystems em 1996, aprimorando e estendendo a funcionalidade e capacidade de servidores Web. Servlets é uma API para

Leia mais

Desenvolvimento de aplicações Web. Java Server Pages

Desenvolvimento de aplicações Web. Java Server Pages Desenvolvimento de aplicações Web Java Server Pages Hamilton Lima - athanazio@pobox.com 2003 Como funciona? Servidor web 2 Internet 1 Browser 3 Arquivo jsp 4 JSP Compilado 2 Passo a passo 1 browser envia

Leia mais

Java II. Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com

Java II. Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com Java II Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com Por quê JSP? Com Servlets é fácil Ler dados de um formulário Recuperar dados de uma requisição Gerar informação de resposta Fazer gerenciamento

Leia mais

Desenvolvimento Web TCC-00.226 Turma A-1

Desenvolvimento Web TCC-00.226 Turma A-1 Desenvolvimento Web TCC-00.226 Turma A-1 Conteúdo JavaServer Pages (JSP) Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.2/tcc-00.226

Leia mais

Java Servlets. Leonardo Gresta Paulino Murta leomurta@ic.uff.br

Java Servlets. Leonardo Gresta Paulino Murta leomurta@ic.uff.br Java Servlets Leonardo Gresta Paulino Murta leomurta@ic.uff.br Especificação/IDE/Implementação Esse curso foi preparado em 03/2015 usando a seguinte especificação, IDE e implementação Especificação Java

Leia mais

Linguagem de Programação III Aula 2 Revisão Parte II

Linguagem de Programação III Aula 2 Revisão Parte II Linguagem de Programação III Aula 2 Revisão Parte II Prof. Moser Fagundes Curso Técnico em Informática (Modalidade Integrada) Instituto Federal Sul-Rio-Grandense (IFSul) Campus Charqueadas Revisão de PHP

Leia mais

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

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 Programação Na Web Sessão II António Gonçalves Índice Visão geral da API Sessão Obter dados sobre uma sessão Extrair informação sobre uma Sessão Adicionar Dados a uma sessão 1 Programação Na Web Motivação

Leia mais

Java para Desenvolvimento Web

Java para Desenvolvimento Web Java para Desenvolvimento Web Cookies Um nada mais é que um bloco de informação que é enviado do servidor para o navegador no cabeçalho da página. A partir de então, dependendo do tempo de validade do,

Leia mais

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

PadrãoIX. Módulo II JAVA. Marcio de Carvalho Victorino. Servlets A,L,F,M JAVA Marcio de Carvalho Victorino 1 Servlets 2 1 Plataforma WEB Baseada em HTTP (RFC 2068): Protocolo simples de transferência de arquivos Sem estado (não mantém sessão aberta) Funcionamento (simplificado):

Leia mais

1.264 Lição 11. Fundamentos da Web

1.264 Lição 11. Fundamentos da Web 1.264 Lição 11 Fundamentos da Web Navegadores e servidores da Web A Internet é apenas um conjunto de redes interconectadas livremente. Um conjunto de redes de área local conectado via redes de área ampla

Leia mais

Desenvolvimento WEB II. Professora: Kelly de Paula Cunha

Desenvolvimento WEB II. Professora: Kelly de Paula Cunha Desenvolvimento WEB II Professora: Kelly de Paula Cunha O Java EE (Java Enterprise Edition): série de especificações detalhadas, dando uma receita de como deve ser implementado um software que utiliza

Leia mais

PHP: Cookies e Sessões

PHP: Cookies e Sessões PHP: Cookies e Sessões Programação de Servidores Marx Gomes Van der Linden Protocolo HTTP O protocolo HTTP não tem conceito de sessões. Modelo simples de Requisição e Resposta. http://marx.vanderlinden.com.br/

Leia mais

Java para WEB. Servlets

Java para WEB. Servlets 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

Leia mais

Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br)

Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) Extensão de servidor escrita em Java Podem ser usados para estender qualquer tipo de aplicação do modelo requisição- resposta Todo servlet implementa a

Leia mais

Tecnologias Web. Java Servlets

Tecnologias Web. Java Servlets Tecnologias Web Java Servlets Cristiano Lehrer, M.Sc. O que são Servlets Extensões do servidor escritas em Java: Podem ser usados para estender qualquer tipo de aplicação do modelo requisição/resposta.

Leia mais

Parte I. Demoiselle Mail

Parte I. Demoiselle Mail Parte I. Demoiselle Mail Para o envio e recebimento de e-s em aplicativos Java, a solução mais natural é usar a API JavaMail [http:// www.oracle.com/technetwork/java/java/index.html]. Ela provê um framework

Leia mais

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

Programação Na Web. Servlets: Como usar as Servlets. Agenda. Template genérico para criar Servlets Servlet 2.4 API Programação Na Web Servlets: Como usar as Servlets 1 António Gonçalves Agenda Template genérico para criar Servlets Servlet 2.4 API Exemplo: Hello World Output: Texto, HTML e hora local. Compilar uma Servlets

Leia mais

O protocolo HTTP. O que é o protocolo HTTP?

O protocolo HTTP. O que é o protocolo HTTP? O protocolo HTTP Você aprenderá: O que é e como funciona o protocolo HTTP. Quais são as partes de um pedido HTTP. Quais são as partes de um a resposta HTTP. IIS - HTTP 1 O que é o protocolo HTTP? Hyper

Leia mais

J820. Testes de interface Web com. HttpUnit. argonavis.com.br. Helder da Rocha (helder@acm.org)

J820. Testes de interface Web com. HttpUnit. argonavis.com.br. Helder da Rocha (helder@acm.org) J820 Testes de interface Web com HttpUnit Helder da Rocha (helder@acm.org) O que é HttpUnit API Java para comunicação com servidores HTTP Permite que programas construam e enviem requisições, e depois

Leia mais

Boas Práticas de Desenvolvimento Seguro

Boas Práticas de Desenvolvimento Seguro Boas Práticas de Desenvolvimento Seguro Julho / 2.012 Histórico de Revisões Data Versão Descrição Autor 29/07/2012 1.0 Versão inicial Ricardo Kiyoshi Página 2 de 11 Conteúdo 1. SEGURANÇA DA INFORMAÇÃO

Leia mais

Desenvolvimento Web TCC-00.226 Turma A-1

Desenvolvimento Web TCC-00.226 Turma A-1 Desenvolvimento Web TCC-00.226 Turma A-1 Conteúdo Arquitetura de Aplicações Distribuídas na Web Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.2/tcc-00.226

Leia mais

Arquiteturas de Aplicações Web. Leonardo Gresta Paulino Murta leomurta@ic.uff.br

Arquiteturas de Aplicações Web. Leonardo Gresta Paulino Murta leomurta@ic.uff.br Arquiteturas de Aplicações Web Leonardo Gresta Paulino Murta leomurta@ic.uff.br Aplicações Convencionais vs. Web Aplicações convencionais Escritas usando uma linguagem de programação (ex.: Java) Sites de

Leia mais

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

Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões. Prof. MSc. Hugo Souza Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões Prof. MSc. Hugo Souza Se você precisar manter informações sobre seus usuários enquanto eles navegam pelo seu site, ou até quando eles saem

Leia mais

J550. Helder da Rocha (helder@acm.org) www.argonavis.com.br

J550. Helder da Rocha (helder@acm.org) www.argonavis.com.br J550 Helder da Rocha (helder@acm.org) www.argonavis.com.br 1 O que são Filtros Um filtro éum componente Web que reside no servidor Intercepta as requisições e respostas no seu caminho até o servlet e de

Leia mais

Java na WEB Servlet. Sumário

Java na WEB Servlet. Sumário 1 Java na WEB Servlet Objetivo: Ao final da aula o aluno será capaz de: Utilizar Servlets para gerar páginas web dinâmicas. Utilizar Servlets para selecionar páginas JSPs. Utilizar Servlets como elemento

Leia mais

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

Programação Web. Professor: Diego Oliveira. Conteúdo 02: JSP e Servlets Programação Web Professor: Diego Oliveira Conteúdo 02: JSP e Servlets JSP JSP é um template de uma página Web que usa Java para gerar HTML dinamicamente JSP é considerado server-side e roda em um objeto

Leia mais

JSF - Controle de Acesso FERNANDO FREITAS COSTA

JSF - Controle de Acesso FERNANDO FREITAS COSTA JSF - Controle de Acesso FERNANDO FREITAS COSTA ESPECIALISTA EM GESTÃO E DOCÊNCIA UNIVERSITÁRIA JSF Controle de Acesso Antes de iniciarmos este assunto, é importante conhecermos a definição de autenticação

Leia mais

Sistemas Distribuídos Capítulos 3 e 4 - Aula 4

Sistemas Distribuídos Capítulos 3 e 4 - Aula 4 Sistemas Distribuídos Capítulos 3 e 4 - Aula 4 Aula passada Threads Threads em SDs Processos Clientes Processos Servidores Aula de hoje Clusters de Servidores Migração de Código Comunicação (Cap. 4) Fundamentos

Leia mais

3 SERVIÇOS IP. 3.1 Serviços IP e alguns aspectos de segurança

3 SERVIÇOS IP. 3.1 Serviços IP e alguns aspectos de segurança 3 SERVIÇOS IP 3.1 Serviços IP e alguns aspectos de segurança Os serviços IP's são suscetíveis a uma variedade de possíveis ataques, desde ataques passivos (como espionagem) até ataques ativos (como a impossibilidade

Leia mais

World Wide Web e Aplicações

World Wide Web e Aplicações World Wide Web e Aplicações Módulo H O que é a WWW Permite a criação, manipulação e recuperação de informações Padrão de fato para navegação, publicação de informações e execução de transações na Internet

Leia mais

Java Beans e Servlets

Java Beans e Servlets 6 Java Beans e Servlets Prof. Autor: Daniel Morais dos Reis e-tec Brasil Programação Avançada Para Web Página1 Meta Apresentar os recursos de orientação à objetos Java em JSP e integrá-los a tecnologia

Leia mais

O atacante pode roubar a sessão de um usuário legítimo do sistema, que esteja previamente autenticado e realizar operações que o mesmo poderia.

O atacante pode roubar a sessão de um usuário legítimo do sistema, que esteja previamente autenticado e realizar operações que o mesmo poderia. Explorando e tratando a falha de Cross-site-scripting (XSS) 1 D E D E Z E M B R O D E 2 0 1 5 Muito pouco falada e com alto nível crítico dentro das vulnerabilidades relatadas, o Cross-site-scripting (XSS)

Leia mais

XSS - CROSS-SITE SCRIPTING

XSS - CROSS-SITE SCRIPTING Segurança XSS - CROSS-SITE SCRIPTING XSS - CROSS-SITE SCRIPTING Vamos supor a seguinte situação: O site ingenuo.com tem um fórum As pessoas escrevem comentários nesse fórum e eles são salvos diretamente

Leia mais

A Camada de Aplicação

A Camada de Aplicação A Camada de Aplicação Romildo Martins Bezerra CEFET/BA Redes de Computadores II Afinal, o que faz a camada de aplicação?... 2 Paradigma Cliente/Servidor [4]... 2 Endereçamento... 2 Tipo de Serviço... 2

Leia mais

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

Associação Carioca de Ensino Superior Centro Universitário Carioca Desenvolvimento de Aplicações Web Lista de Exercícios Métodos HTTP 1. No tocante ao protocolo de transferência de hipertexto (HTTP), esse protocolo da categoria "solicitação e resposta" possui três métodos

Leia mais

Teleprocessamento e Redes

Teleprocessamento e Redes Teleprocessamento e Redes Aula 21: 06 de julho de 2010 1 2 3 (RFC 959) Sumário Aplicação de transferência de arquivos de/para um host remoto O usuário deve prover login/senha O usa duas conexões TCP em

Leia mais

Conceitos de Ajax Exemplos de uso do Ajax no braço, muitos exemplos, muito código (HTML, CSS, JavaScript, PHP, XML, JSON)

Conceitos de Ajax Exemplos de uso do Ajax no braço, muitos exemplos, muito código (HTML, CSS, JavaScript, PHP, XML, JSON) Márcio Koch 1 Currículo Formado na FURB em Ciência da Computação Pós graduado em Tecnologias para o desenvolvimento de aplicações web Mestrando em Computação Gráfica na UDESC Arquiteto de software na Senior

Leia mais

Web. Até a década de 1990, a Internet era utilizada. por pesquisadores, acadêmicos e universitários, para troca de arquivos e para correio eletrônico.

Web. Até a década de 1990, a Internet era utilizada. por pesquisadores, acadêmicos e universitários, para troca de arquivos e para correio eletrônico. A Web e o HTTP Web Até a década de 1990, a Internet era utilizada por pesquisadores, acadêmicos e universitários, para troca de arquivos e para correio eletrônico. Então, no início dessa década, iniciou-se

Leia mais

Engenharia de Software Aplicações de Internet

Engenharia de Software Aplicações de Internet Engenharia de Software Aplicações de Internet Eduardo Santos eduardo.edusantos@gmail.com eduardo.santos@planejamento.gov.br www.softwarepublico.gov.br Histórico Por que existe a Internet? Por que existe

Leia mais

Laboratórios 5, 6, 7 - Servlets

Laboratórios 5, 6, 7 - Servlets Laboratórios 5, 6, 7 - Servlets Introdução Como já deverão ter noção, uma Servlet é uma classe Java utilizada para estender as capacidades dos servidores web, utilizando para tal um modelo de pedido-resposta.

Leia mais

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

Objetos Implícitos. Conceito. Instanciados pelo próprio contêiner. Disponíveis em quaisquer páginas JSP. Slide 1 Conceito Instanciados pelo próprio contêiner. Disponíveis em quaisquer páginas JSP. Instruções de criação inseridas no método _jspservice( ). Slide 2 Identificação e tipo Identificação Tipo application

Leia mais

Top Ten OWASP. Fausto Levandoski 1. Curso Tecnólogo em Segurança da Informação Av. Unisinos, 950 93.022-000 São Leopoldo RS Brasil. farole@gmail.

Top Ten OWASP. Fausto Levandoski 1. Curso Tecnólogo em Segurança da Informação Av. Unisinos, 950 93.022-000 São Leopoldo RS Brasil. farole@gmail. Top Ten OWASP Fausto Levandoski 1 1 Universidade do Vale do Rios dos Sinos (UNISINOS) Curso Tecnólogo em Segurança da Informação Av. Unisinos, 950 93.022-000 São Leopoldo RS Brasil farole@gmail.com Abstract.

Leia mais

Java 2 Standard Edition Fundamentos de

Java 2 Standard Edition Fundamentos de Java 2 Standard Edition Fundamentos de Helder da Rocha www.argonavis.com.br 1 Sobre este módulo Este módulo pretende apenas cobrir conceitos essenciais sobre programação em rede com Java Como criar um

Leia mais

Servlets e Applets, funcionamento e comparativo.

Servlets e Applets, funcionamento e comparativo. Servlets e Applets, funcionamento e comparativo. Airon Rabel Teixeira Rua Guarapuava Joinville SC airon@ymail.com Resumo: Este artigo explica de maneira breve o funcionamento de servlets e applets, mostrando

Leia mais

Programação WEB II. Sessions e Cookies. progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza

Programação WEB II. Sessions e Cookies. progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza Sessions e Cookies progweb2@thiagomiranda.net Conteúdos Os materiais de aula, apostilas e outras informações estarão disponíveis em: www.thiagomiranda.net Cookies e Sessions Geralmente, um bom projeto

Leia mais

O protocolo HTTP. Você aprenderá: O que é e como funciona o protocolo HTTP. Quais são as partes de um pedido HTTP.

O protocolo HTTP. Você aprenderá: O que é e como funciona o protocolo HTTP. Quais são as partes de um pedido HTTP. HTTP O protocolo HTTP Você aprenderá: O que é e como funciona o protocolo HTTP. Quais são as partes de um pedido HTTP. Quais são as partes de um a resposta HTTP. O que é o protocolo HTTP? Hyper Text Transfer

Leia mais

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS -HTML 5: ARMAZENAMENTO DE DADOS (CLIENTE) Prof. Angelo Augusto Frozza, M.Sc. http://about.

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS -HTML 5: ARMAZENAMENTO DE DADOS (CLIENTE) Prof. Angelo Augusto Frozza, M.Sc. http://about. PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS -HTML 5: ARMAZENAMENTO DE DADOS (CLIENTE) Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO Introdução Compatibilidade Principais características

Leia mais

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

Introdução. Entendendo os Controles. Definindo um controle. Introdução MOCKDOMAIN() Testando uma classe de domínio mockdomain Testando uma classe de domínio mockdomain void testduracaominima() { mockdomain(musica) def musica = new Musica(duracao: 0) assertfalse 'Validacao deve falhar', musica.validate() MOCKDOMAIN() assertequals

Leia mais

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

Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP Software cliente: browser e outros Protocolo HTTP Infraestrutura de transporte

Leia mais

Fonte: http://www.online-security-solution.com/ - Illustration by Gaich Muramatsu

Fonte: http://www.online-security-solution.com/ - Illustration by Gaich Muramatsu Fonte: http://www.online-security-solution.com/ - Illustration by Gaich Muramatsu Prof. Hederson Velasco Ramos Uma boa maneira de analisar ameaças no nível dos aplicativo é organiza las por categoria de

Leia mais

Redes de Computadores e a Internet

Redes de Computadores e a Internet Redes de Computadores e a Internet Magnos Martinello Universidade Federal do Espírito Santo - UFES Departamento de Informática - DI Laboratório de Pesquisas em Redes Multimidia - LPRM 2010 Camada de Aplicação

Leia mais

Prof.ª Daniela Barreiro Claro

Prof.ª Daniela Barreiro Claro Prof.ª Daniela Barreiro Claro A API JavaServlet é uma extensão da plataforma Java que permite que os desenvolvedores adicionem, nos servidores Web, mecanismos que estendam sua funcionalidade. Um servlet

Leia mais

Wireshark. Captura de Protocolos da camada de aplicação. Maicon de Vargas Pereira

Wireshark. Captura de Protocolos da camada de aplicação. Maicon de Vargas Pereira Wireshark Captura de Protocolos da camada de aplicação Maicon de Vargas Pereira Camada de Aplicação Introdução HTTP (Hypertext Transfer Protocol) 2 Introdução Camada de Aplicação Suporta os protocolos

Leia mais

J550. Sessões. Helder da Rocha

J550. Sessões. Helder da Rocha J550 Sessões Helder da Rocha (helder@acm.org) www.argonavis.com.br 1 Sessões Como o HTTP não mantém estado de sessão, são as aplicações Web que precisam cuidar de mantê-lo quando necessário Sessões representam

Leia mais

Java e JavaScript. Krishna Tateneni Tradução: Lisiane Sztoltz

Java e JavaScript. Krishna Tateneni Tradução: Lisiane Sztoltz Krishna Tateneni Tradução: Lisiane Sztoltz 2 Conteúdo 1 Java e JavaScript 4 1.1 Java............................................. 4 1.2 JavaScript.......................................... 4 3 1 Java e

Leia mais

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Questões Em uma rede de sobreposição (overlay), mensagens são roteadas de acordo com a topologia da sobreposição. Qual uma importante desvantagem

Leia mais

Universidade Federal do Espírito Santo CCA UFES. Centro de Ciências Agrárias CCA UFES Departamento de Computação. Programação WEB

Universidade Federal do Espírito Santo CCA UFES. Centro de Ciências Agrárias CCA UFES Departamento de Computação. Programação WEB Universidade Federal do Espírito Santo Centro de Ciências Agrárias CCA UFES Departamento de Computação Universidade Federal do Espírito Santo CCA UFES Programação WEB Desenvolvimento de Sistemas para WEB

Leia mais

Permite o acesso remoto a um computador;

Permite o acesso remoto a um computador; Telnet Permite o acesso remoto a um computador; Modelo: Cliente/Servidor; O cliente faz um login em um servidor que esteja conectado à rede (ou à Internet); O usuário manipula o servidor como se ele estivesse

Leia mais

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

Programação II Programação para a Web. Christopher Burrows Programação II Programação para a Web Christopher Burrows Apache Tomcat O Apache Tomcat é um Servlet Container desenvolvido pela Apache Software Foundation. Implementa as tecnologias Java Servlets e Java

Leia mais

Facebook. Java com o. Integrando Aplicações. Descubra como é fácil criar uma aplicação para rodar no Facebook. _capa

Facebook. Java com o. Integrando Aplicações. Descubra como é fácil criar uma aplicação para rodar no Facebook. _capa _capa Integrando Aplicações Java com o Facebook Descubra como é fácil criar uma aplicação para rodar no Facebook Desde o lançamento oficial do Facebook, em 2004, o número de usuários vem aumentando a cada

Leia mais

Prof. Roberto Franciscatto 4º Semestre - TSI - CAFW. Free Powerpoint Templates Page 1

Prof. Roberto Franciscatto 4º Semestre - TSI - CAFW. Free Powerpoint Templates Page 1 Segurança na Web Capítulo 9: Segurança em Aplicações Web Prof. Roberto Franciscatto 4º Semestre - TSI - CAFW Page 1 Introdução Quando se fala em segurança na WEB é preciso pensar inicialmente em duas frentes:

Leia mais

Aula 03 - Projeto Java Web

Aula 03 - Projeto Java Web Aula 03 - Projeto Java Web Para criação de um projeto java web, vá em File/New. Escolha o projeto: Em seguida, na caixa Categorias selecione Java Web. Feito isso, na caixa à direita selecione Aplicação

Leia mais

HyperText Transfer Protocol (HTTP)

HyperText Transfer Protocol (HTTP) Programação Na Web HyperText Transfer Protocol () António Gonçalves Arquitectura Protocolo de transporte de documentos hypertexto RFC 1945 - Versão 1.0 RFC 2616 - Versão 1.1 O pedido é feito em ASCII e

Leia mais

UNIDADE II JAVA SERVLETS

UNIDADE II JAVA SERVLETS UNIDADE II JAVA SERVLETS INTERNET É uma rede de redes, reunindo computadores do Governo, de universidades e empresas fornecendo infra-estrutura para uso de bancos de dados, correio eletrônico, servidores

Leia mais

Notas da Aula 15 - Fundamentos de Sistemas Operacionais

Notas da Aula 15 - Fundamentos de Sistemas Operacionais Notas da Aula 15 - Fundamentos de Sistemas Operacionais 1. Software de Entrada e Saída: Visão Geral Uma das tarefas do Sistema Operacional é simplificar o acesso aos dispositivos de hardware pelos processos

Leia mais

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Basedos na Web Capítulo 12 Agenda Arquitetura Processos Comunicação Nomeação Sincronização Consistência e Replicação Introdução

Leia mais

Desenvolvimento e disponibilização de Conteúdos para a Internet

Desenvolvimento e disponibilização de Conteúdos para a Internet Desenvolvimento e disponibilização de Conteúdos para a Internet Por Matheus Orion OWASP A Open Web Application Security Project (OWASP) é uma entidade sem fins lucrativos e de reconhecimento internacional,

Leia mais

TUTORIAL JAVA AS - HTTP CLIENT COMPOSITION ENVIROMENT 7.1

TUTORIAL JAVA AS - HTTP CLIENT COMPOSITION ENVIROMENT 7.1 TUTORIAL JAVA AS - HTTP CLIENT COMPOSITION ENVIROMENT 7.1 FABIO HAIDER 2008 C O N T E Ú D O : 1 HTTP Client...3 1.1 Arquitetura...3 1.2 Usando HTTP Client...3 1.2.1 Usuário...3 1.2.2 Implementação HTTP

Leia mais

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

Web Browser como o processo cliente. Servidor web com páginas estáticas Vs. Aplicações dinâmicas para a Web: Web Browser como o processo cliente Servidor web com páginas estáticas Vs Aplicações dinâmicas para a Web: 1 Cliente Web browser HTTP porto 80 Servidor web... JDBC RMI XML... Base de Dados Aplicação em

Leia mais

J550 Testes em Aplicações Web com Cactus

J550 Testes em Aplicações Web com Cactus J550 Testes em Aplicações Web com Cactus Helder da Rocha (helder@acm.org) www.argonavis.com.br 1 Sobre este módulo Este módulo descreve um framework - o Jakarta Cactus - que pode ser utilizado para testar

Leia mais

Notas da Aula 6 - Fundamentos de Sistemas Operacionais

Notas da Aula 6 - Fundamentos de Sistemas Operacionais 1. Monitores Notas da Aula 6 - Fundamentos de Sistemas Operacionais Embora os semáforos sejam uma boa solução para o problema da exclusão mútua, sua utilização não é trivial. O programador é obrigado a

Leia mais

DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0

DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0 DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0 Índice 1 - Objetivo 2 - Descrição do ambiente 2.1. Tecnologias utilizadas 2.2. Estrutura de pastas 2.3. Bibliotecas já incluídas 3 - Características gerais 4 - Criando

Leia mais

HTTP. passado, presente e futuro.

HTTP. passado, presente e futuro. HTTP passado, presente e futuro. Luiz Fernando Rodrigues (ou Fernahh) blog.fernahh.com.br github.com/fernahh twitter.com/fernahh speakerdeck.com/fernahh www.organicadigital.com HTT... o que? HTT... o que?

Leia mais

Novell Vibe 4.0. Março de 2015. Inicialização Rápida. Iniciando o Novell Vibe. Conhecendo a interface do Novell Vibe e seus recursos

Novell Vibe 4.0. Março de 2015. Inicialização Rápida. Iniciando o Novell Vibe. Conhecendo a interface do Novell Vibe e seus recursos Novell Vibe 4.0 Março de 2015 Inicialização Rápida Quando você começa a usar o Novell Vibe, a primeira coisa a se fazer é configurar sua área de trabalho pessoal e criar uma área de trabalho de equipe.

Leia mais

Arquitetura de uma Webapp

Arquitetura de uma Webapp Arquitetura de uma Webapp Arquitetura J2EE Containers e componentes MVC: introdução Frederico Costa Guedes Pereira 2006 fredguedespereira@gmail.com Plataforma J2EE World Wide Web e a Economia da Informação

Leia mais

4. Qual seria o impacto da escolha de uma chave que possua letras repetidas em uma cifra de transposição?

4. Qual seria o impacto da escolha de uma chave que possua letras repetidas em uma cifra de transposição? Prova de 2011-02 1. Descreva duas maneiras de estabelecer uma conexão entre processos na camada de transporte sem o conhecimento da porta (TSAP) ao qual o servidor remoto esteja associado. 2. Estabelecer

Leia mais

www.victorpinheiro.jimdo.com www.victorpinheiro.jimdo.com

www.victorpinheiro.jimdo.com www.victorpinheiro.jimdo.com SERVIÇOS DE REDES DE COMPUTADORES Prof. Victor Guimarães Pinheiro/victor.tecnologo@gmail.com www.victorpinheiro.jimdo.com www.victorpinheiro.jimdo.com Modelo TCP/IP É o protocolo mais usado da atualidade

Leia mais

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

Curso de Java. Geração de Páginas WEB. TodososdireitosreservadosKlais Curso de Java Geração de Páginas WEB Aplicação WEB Numa aplicação WEB de conteúdo dinâmico As páginas são construídas a partir de dados da aplicação (mantidos num banco de dados). Usuários interagem com

Leia mais

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

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

Leia mais

3. Explique o motivo pelo qual os protocolos UDP e TCP acrescentam a informação das portas (TSAP) de origem e de destino em seu cabeçalho.

3. Explique o motivo pelo qual os protocolos UDP e TCP acrescentam a informação das portas (TSAP) de origem e de destino em seu cabeçalho. Entregue três questões de cada prova. Prova de 2011-02 1. Descreva duas maneiras de estabelecer uma conexão entre processos na camada de transporte sem o conhecimento da porta (TSAP) ao qual o servidor

Leia mais

Programação para Internet II

Programação para Internet II Programação para Internet II Aulas 01 e 02 Prof. Fernando Freitas Costa http://professor.fimes.edu.br/fernando nando@fimes.edu.br Prof. Fernando 1 Ementa Instalação e configuração básica do NetBeans e

Leia mais

Descrição. Implementação. Departamento de Informática e Estatística Universidade Federal de Santa Catarina LAB 4 Transferência de Arquivos

Descrição. Implementação. Departamento de Informática e Estatística Universidade Federal de Santa Catarina LAB 4 Transferência de Arquivos Departamento de Informática e Estatística Universidade Federal de Santa Catarina LAB 4 Transferência de Arquivos Descrição Implemente nesta atividade de laboratório um programa em Java utilizando threads

Leia mais

Teia de alcance mundial (World Wide Web WWW) Web composta de

Teia de alcance mundial (World Wide Web WWW) Web composta de Web Teia de alcance mundial (World Wide Web WWW) Web composta de Agentes de usuário para a Web (browsers) Servidores Web Protocolo de transferência de hipertexto (HyperText Transfer Protocol HTTP) Web

Leia mais

Material de apoio a aulas de Desenvolvimento Web. Tutorial Java WEB JSP & HTML & CSS & CLASSE & OBJETOS. AAS - www.aas.pro.

Material de apoio a aulas de Desenvolvimento Web. Tutorial Java WEB JSP & HTML & CSS & CLASSE & OBJETOS. AAS - www.aas.pro. Material de apoio a aulas de Desenvolvimento Web Tutorial Java WEB JSP & HTML & CSS & CLASSE & OBJETOS AAS - www.aas.pro.net Março-2012 Este pequeno tutorial tem como objetivo conduzir o programador passo-a-passo

Leia mais

ENTERPRISE JAVABEANS 3. Msc. Daniele Carvalho Oliveira

ENTERPRISE JAVABEANS 3. Msc. Daniele Carvalho Oliveira ENTERPRISE JAVABEANS 3 Msc. Daniele Carvalho Oliveira Apostila Servlets e JSP www.argonavis.com.br/cursos/java/j550/index.html INTRODUÇÃO Introdução Enterprise JavaBeans é um padrão de modelo de componentes

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Modelo Cliente-Servidor: Introdução aos tipos de servidores e clientes Prof. MSc. Hugo Souza Iniciando o módulo 03 da primeira unidade, iremos abordar sobre o Modelo Cliente-Servidor

Leia mais

Programação para Internet II

Programação para Internet II Programação para Internet II Aulas 01 e 02 Prof. Fernando Freitas Costa http://blog.fimes.edu.br/fernando nando@fimes.edu.br Conteúdo Programático Instalação e configuração básica do Eclipse Indigo e do

Leia mais

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

20/08/14 JAVA SERVLETS CONCEITOS CONTEÚDO ARQUITETURA DE UMA APLICAÇÃO WEB ARQUITETURA DA APLICAÇÃO WEB CONTEÚDO TECNOLOGIA EM INFORMÁTICA PARA NEGÓCIOS JAVA CONCEITOS Prof. Dr. Henrique Dezani dezani@fatecriopreto.edu.br Arquitetura de uma aplicação Web HTTP (HyperText Transfer Protocol) Métodos HTTP GET

Leia mais

Web Services. Autor: Rômulo Rosa Furtado

Web Services. Autor: Rômulo Rosa Furtado Web Services Autor: Rômulo Rosa Furtado Sumário O que é um Web Service. Qual a finalidade de um Web Service. Como funciona o serviço. Motivação para o uso. Como construir um. Referências. Seção: O que

Leia mais

BANCO DE DADOS CONTEÚDO INFORMÁTICA. Prof.: MARCIO HOLLWEG mhollweg@terra.com.br BANCO DE DADOS SGBD TABELA CONCEITOS BÁSICOS

BANCO DE DADOS CONTEÚDO INFORMÁTICA. Prof.: MARCIO HOLLWEG mhollweg@terra.com.br BANCO DE DADOS SGBD TABELA CONCEITOS BÁSICOS CONTEÚDO HARDWARE - 2 AULAS SISTEMA OPERACIONAL - 2 AULAS INFORMÁTICA Prof.: MARCIO HOLLWEG mhollweg@terra.com.br APLICATIVOS OFFICE - 3 AULAS INTERNET - 1 AULA REDE - 2 AULA SEGURANÇA - 1 AULA BANCO DE

Leia mais

O que é uma sessão. maneira de preservar dados através de acessos subsequentes.

O que é uma sessão. maneira de preservar dados através de acessos subsequentes. Sessões em PHP O que é uma sessão Suporte a sessões no PHP: maneira de preservar dados através de acessos subsequentes. Características: permite a criação de aplicações mais personalizadas; permite que

Leia mais

HYPERTEXT TRANSFER PROTOCOL

HYPERTEXT TRANSFER PROTOCOL REDES DE COMPUTADORES Prof. Esp. Fabiano Taguchi http://fabianotaguchi.wordpress.com fabianotaguchi@gmail.com HYPERTEXT TRANSFER PROTOCOL 1 HTTP Uma página WWW é composta de objetos e endereçado por uma

Leia mais

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

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) Web Container: e JSP Sumário Protocolo HTTP Exemplos de JSP (Java Server Pages) Exemplos JSP 2 Protocolo HTTP URL: Um URL (Uniform

Leia mais

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS -HTML 5: ARMAZENAMENTO DE DADOS (CLIENTE) Prof. Angelo Augusto Frozza, M.Sc. http://about.

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS -HTML 5: ARMAZENAMENTO DE DADOS (CLIENTE) Prof. Angelo Augusto Frozza, M.Sc. http://about. PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS -HTML 5: ARMAZENAMENTO DE DADOS (CLIENTE) Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO Introdução Compatibilidade Principais características

Leia mais

Aplicação Prática de Lua para Web

Aplicação Prática de Lua para Web Aplicação Prática de Lua para Web Aluno: Diego Malone Orientador: Sérgio Lifschitz Introdução A linguagem Lua vem sendo desenvolvida desde 1993 por pesquisadores do Departamento de Informática da PUC-Rio

Leia mais

Redes de Computadores Camada de Aplicação. Prof. MSc. Hugo Souza

Redes de Computadores Camada de Aplicação. Prof. MSc. Hugo Souza Redes de Computadores Camada de Aplicação Prof. MSc. Hugo Souza É a camada que dispõe a programação para as aplicações de rede através dos protocolos de aplicação; Provém a implantação da arquitetura de

Leia mais