Relatório do GPES Relatório referente a compreensão da programação JSP. Realizado do dia de 22 abril de 2010 a 03 de maio de 2010. Compreender a programação JSP. Os Servlets assim como JSP são tecnologias desenvolvidas pela empresa Sun, utilizadas para aplicações na Web a partir de elementos Java. Tanto JSP quanto Servlets fazem parte da plataforma J2EE (Java 2 Plataform Enterprise Edition) a qual agrega uma série de tecnologias para desenvolvimento de soluções para Web[1]. Java Serve Page (JSP) é página em HTML que inclue código Java e outras tags especiais. Desta forma, as partes estáticas da página não precisam ser geradas por println(), sendo fixadas na própria página. A parte dinâmica é gerada pelo código JSP. Assim, a parte estática da página pode ser projetada pela Web Designer [2]. Existem em páginas JSP a recompilação automática, que permite que alterações no código da página sejam automaticamente visíveis em sua apresentação. Assim, não é necessário interromper o funcionamento da aplicação para incorporar uma modificação de layout da página. Um exemplo de programa JSP pode ser visualizado na Figura 1. <! Página JSP Simples que imprime endereço IP da máquina que está fazendo o acesso a esta página > <HTML> <BODY> O seu endereço IP é <%= request.getremoteaddr () %> </BODY> </HTML> Figura 1 - Exemplo de Página JSP[3]. Esta figura é o exemplo de uma página a qual informa o IP da máquina acessada a página. A página é acionada e processada pelo J2EE Web Container, J2EE é a definição de um container Web, sendo que o servidor que responsabiliza-se por Servlets e JSP. O cliente faz a solicitação de um arquivo JSP que é enviado para um object request para a JSP engine. A JSP engine envia a solicitação de qualquer componente (podendo ser um JavaBeans component, servlet ou enterprise Bean) especificado no arquivo. O componente controla a requisição possibilitando a recuperação de arquivos em banco de dados ou outro dado armazenado, em seguida, passa o objeto response de volta para a JSP engine [4]. A JSP engine e o WEB server enviam a página JSP revisada de volta para o cliente, onde o usuário pode visualizar os resultados através do WEB browser [4]. Um exemplo de como funciona a troca de informações entre servidor e cliente pode ser visto na Figura 2[4]. 1
Figura 2 Funcionamento de uma página JSP [4]. Como o motor das páginas JSP está aprimorado nos servlets, é a classe Java usada para tratar requisições web e enviar respostas dinâmicas pela definição de um container Web, que é a parte do servidor que cuida de Servlets e JSP. O cotainer Web muito popular é o Tomcat devido a sua fácil configuração [4]. A maior parte do código de uma página JSP consiste em template text. O template text é similar ao HTML, obedecendo às mesmas regras de sintaxe e é simplesmente passado ao cliente por um servlet criado especialmente para manusear a página. Além de HTML, se pode usar como texto estático em JSP as linguagens SVG, WML, XML, entre outras [5]. A elaboração de uma aplicação desenvolvida em JSP geralmente se escreve o texto HTML e incluem códigos Java entre tags de JSP. Para eventuais desenvolvimentos em JSP pode-se usar a ferramenta IDE Eclipse 3.5 e o container Tomcat. As tags de JSP podem ser: declarações, expressões, scriptlets e Comentários. Declarações Tudo que está inserido entre <%! e %>, como mostra a Figura 3[5]. <%! int i = 0; %> <%! int telefone, codigo; String nome = Laura ; %> <%! Cliente c1 = new Cliente(); %> Figura 3 Exemplos de como declarar variáveis em páginas JSP[5]. 2
Expressões Tudo que está inserido entre <%= e %>.Um exemplo é mostrado na Figura 4 [5]. <%= Math.mod(12) %> <%= vetor[j] %> <%= ((x - y )* z) %> <%= new java.util.date() %> Figura 4 Exemplo de expressões em JSP[5]. Scripts Scriplet é o código escrito entre <% e %>, Quando o código descrito na Figura 5 é acessado por um navegador com a seguinte URL HTTP://localhost:8080/teste/6.jsp?text=Nome, qual a string text recebe nome o resultado é mostrado na Figura 6: <%out.println("seu nome é: +request.getparameter("text")); %> Figura 5-Exemplo de scriplet em JSP com uma variável chamada text [5]. Figura 6 Código descrito na Figura 5 quando acessado por um navegador. Comentários O comentário de conteúdo se compreende pela seguinte sintaxe na figura 7: <!-- comment --> Figura 7-Sintaxe de comentário[5]. 3
Um exemplo de como ficará um comentário realizado com essa tag observa-se na Figura 8. <html> <head> <title>esta é uma pequena pagina em JSP</title> <%-- Este é o titulo --%> </head> <body> <% String s= "Bem Vindo!!";%> <%--Esta linha declara a variavel "s" e atribui a ela o valor "Bem Vindo!!" --%> <% out.println("esta página diz: "+ s);%><%-- Esta linha faz com que a mensagem seja mostrada na tela --%> </body> </html> Figura 8 Uso da tag de comentário de conteúdo[5]. Os comentários JSP podem assumir duas sintaxes [7], <%-- comment -- %>ou<% /* comment */ %> O código com os comentários usando a tag <%-- --%>está apresentado na Figura 9. Figura 9 - Códigos em JSP que contém comentários usando a tag<%-- --%>[5]. 4
Este relatório abordou sintaxes fundamentais e uma breve descrição do funcionamento de Java Serve Page (JSP) para uma eventual iniciação no desenvolvimento para web. Referências [1]http://serverapostilando.com/tutorials/2176_servlet_jsp.zip Acessado 03 de maio de 2010. [2]http://serverapostilando.com/tutorials/2176_servlet_jsp.zip Acessado 03 de maio de 2010. [3]Programação Web com JSP, Servlets e J2EE.Disponivel em http://www.ebah.com.br/programação-web-comjsp-servlets-e-j2ee-pdf-a22346.html Acessado 03 de maio de 2010. [4] Novas tecnologias da web. Disponível em http://www.dei.unicap.br/~almir/seminarios/2001.1/2mno/tecnologiasweb/jsp.ht m Acesso em 03 de maio de 2010. [5] Simbologia - Parte 1. Disponível em <http://www.htmlstaff.org/ver.php?id=1557> Acesso em 03 de maio de 2010. 5