Prévia do material em texto
Este módulo aborda funcionamento, os elementos de diretivas, de scripts de ações. JSP é uma página html comum que contém também código Java e possui extensão jsp. Os arquivos JSPs não são compilados dentro do eclipse e, por este motivo, quando escreve-se o JSP no eclipse não necessita-se das classes de drivers. Os JSPs são transformados em uma servlet, por um compilador JSP (o Tomcat contém um compilador embutido). Esse compilador JSP pode gerar um código java que é então compilado para gerar byte code diretamente para a servlet. Então, somente durante a execução de uma página jsp, quando ele é transformado em uma servlet, seu código java é compilado e precisa-se das classes do driver que são procuradas no diretório lib. web contêiner interpreta o arquivo JSP, compila e transforma em uma servlet! Assim sendo, logo que arquivo JSP é chamado pela primeira vez por um cliente, uma servlet que o representa é criada, aplicando todos os benefícios da mesma para uma página JSP. Desta forma, tem-se que os JSPs são páginas HTML que contém código Java embutido, estendendo a funcionalidade dos HTMLs, tornando-os dinâmicos. Portanto, a sintaxe é a mesma do Java, havendo a diferença de que deve-se inserir o código Java no corpo do HTML. Para isto, se faz necessário codificar código Java dentro do bloco marcado por . Tudo dentro deste bloco é Java, tudo fora dele é texto ou HTML. A intenção de se usar JSP é a de tirar o código HTML de dentro dos Servlets, dado que resulta em muito trabalho de codificação e manutenção. Com os JSPs é possível desenhar um HTML e então adicionar Java dentro dele. Teste JSPTodos os comandos Java dentro do bloco marcado por são chamados de scriptlet. Supondo-se que se quer imprimir no JSP valor de uma variável, pode-se usar scriptlet da seguinte forma: Out é um objeto implícito do JSP, que representa a saída (PrintWriter) do JSP, sendo uma facilidade de imprimir uma resposta. O código abaixo é equivalente à segunda linha do exemplo acima. caractere = antes da expressão não termina com o caractere ponto-e-vírgula. As diretivas informam as informações gerais sobre a página JSP para a Engine JSP, existindo três tipos de diretivas: Page Informa uma lista de atributos sobre a página como, por exemplo, os imports a serem feitos, se é página de erro e qual a página de erro, dentre outros. Include Inclui outro recurso, que pode ser dinâmico ou não, no JSP. Taglib Trabalha com um conjunto de tags personalizadas que adicionam funcionalidade ao JSP e são chamadas Tag Libs ou Tag Libraries. EXEMPLO Teste JSPDate agora = new Date(); %> Data atual: Os JSPs possuem alguns objetos implícitos na página. São eles: Application Objeto ServletContext. Request - Objeto HttpServletRequest. Response - - Objeto HttpServletResponse. Session - Objeto HttpSession. PageContext - Objeto PageContext, que representa a própria página. Page - Referência à própria página JSP (this). Out Objeto PrintWriter que envia resposta ao cliente. Config Objeto ServletConfig. Exception - Objeto Throwable, disponível somente nos JSPs que são páginas de erro. Objetos Implícitos do JSP Valor do param1: Atrrib1 da sessão:As actions são comandos já pré-programados. Elas são declaradas no formato de tags: include, forward, useBean, setProperty, getProperty, plugin. A sintaxe de utilização é a seguinte: EXEMPLO Exercício 1: Para usar as tags Struts deve-se utilizar no topo da página JSP a diretiva: A) B) C) D) E)Exercício 2: Analise as seguintes afirmativas sobre tecnologias para aplicações Web baseadas em Java. I. JSP permite a criação de páginas Web com conteúdo estático e dinâmico. II. EJb é um framework de componentes, baseado na arquitetura para construção de interfaces com usuário. III. JSTL permite utilizar conjuntos padronizados de tags para manipulação de arquivos XML, internacionalização, dentre outros. Assinale a alternativa CORRETA: A) A afirmativa III está errada e as afirmativas I, II estão corretas. B) A afirmativa II está errada e as afirmativas I, III estão corretas. C) A afirmativa I está errada e as afirmativas II, III estão corretas. D) As afirmativas I, II e III estão corretas. E) As afirmativas I, II e III estão erradas. Exercício 3: Qual ação padrão do JSP interrompe processamento das requisições pela página corrente e as direciona para outro componente Web? A) B)C) D) E) Exercício 4: Preencha as lacunas e, em seguida, assinale a alternativa correta. Uma JSP consiste em uma combinação de e , que contêm código executável e a marcação estática, como ou código contido na JSP é identificado e executado pelo , e a página resultante é enviada para cliente. A) tags JSP / scriplets / HTML / XML / servidor B) tags JSP / scriplets / HTML / XML / compilador C) tags JSP / HTML / Java / Java Script / compilador D) tags JSP / HTML / Java / Java Script / servidor E) tags JSP / HTML / Java / XML / servidor Exercício 5:Sobre Servlets, analise as assertivas e assinale a alternativa que aponta as corretas. I. Servlets são implementadas como arquivos de classe da Linguagem Java. II. Servlets são independentes de plataforma, de modo que podem ser executadas em diferentes servidores, em diferentes sistemas operacionais. III. As Servlets podem acessar qualquer uma das APIs Java. Uma Servlet pode usar a API JDBC para acessar e armazenar dados ou para acessar objetos remotos. IV. Ao criar uma Servlet, somos obrigados a reescrever nove métodos presentes à interface que foi implementada. A) Apenas I e II. B) Apenas I e III. C) Apenas II e III. D) Apenas I, II e III. E) I, II, III e IV. Exercício 6: Os JSPs possuem alguns objetos implícitos na página, dentre os quais está Page que corresponde a: A) Objeto HttpServletRequest. B) Referência à própria página JSP (this).C) Objeto HttpSession. D) Objeto PageContext, que representa a própria página. E) Objeto PrintWriter que envia resposta ao cliente. Exercício 7: As actions são comandos pré-programados, declaradas no formato de tags, cuja sintaxe de utilização é: A) /> B) D) E)