Desenvolvimento - Java

Java Server Pages e Servidor Tomcat

A Java Server Pages (JSP) é uma das tecnologias de componentes Web da plataforma J2EE. Atuando na camada de apresentação, as páginas JSP utilizam a tecnologia Java no formato de servlets no lado do servidor para a criação de conteúdo dinâmico, junto a tags HTML para o conteúdo estático. As páginas JSP podem ser executadas em diversos servidores compatíveis, com versões para Windows e Linux. Um dos mais famosos é o Tomcat.

por Eric C M Oliveira



A tecnologia Java Server Pages (JSP) é uma extensão da tecnologia de servlets. Ambas são tecnologias Web J2EE que utilizam o conceito de container, responsável por gerar conteúdo dinâmico via protocolo http e fornecer o runtime para aplicações, entre outras tarefas.

Assim sendo, a arquitetura geral das páginas JSP tem muito em comum com os servlets, tendo em vista que a especificação JSP é definida como uma extensão da API Servlet. Além das classes e interfaces para programar servlets (pacotes javax.servlet e javax.servlet.http), as classes e interfaces específicas à programação de JavaServer Pages encontram-se nos pacotes javax. servlet.

Atuando na camada de apresentação, as páginas JSP utilizam a tecnologia Java no formato de servlets no lado do servidor para a criação de conteúdo dinâmico, junto a tags HTML para o conteúdo estático.

Quando um servidor compatível com JSP recebe a primeira solicitação para uma JSP, o contêiner de JSP traduz essa JSP em um servlet Java que trata a solicitação atual e as solicitações futuras para a JSP. Se houver algum erro na compilação do novo servlet, esses erros resultam em erros em tempo de tradução.

Alguns contêineres de JSP traduzem as JSPs para servlets em tempo de instalação. Isso elimina o overhead de tradução para o primeiro cliente que solicita cada JSP

Podemos observar as seguintes características do JSP:

  • Separação do conteúdo estático do dinâmico: como vimos, a lógica de geração de conteúdo dinâmico é mantida separada das tags HTML responsáveis pela interface para o usuário. A parte lógica é encapsulada em componentes Java do tipo JavaBeans, que são utilizados pelas páginas JSP através de scriptlets ou tags especiais, chamadas taglibs.

  • "Escreva uma vez, rode em qualquer lugar": como a tecnologia JSP é uma extensão da plataforma Java, as páginas JSP têm a vantagem da independência de plataforma.

  • Diversos formatos: possibilidade de implementação de linguagens como HTML, XML, DHTML, WML, etc.

  • Utilização de código Java: é possível utilizar os chamados scriplets, que são nada mais que trechos de código Java puro inseridos dentro da página JSP, tendo assim as vantagens tanto da Orientação a Objetos quanto de Java.

Arquitetura JSP

Há componentes-chaves para JSPs: diretivas, ações e scriptlets. As diretivas são mensagens para o contêiner de JSP que permite ao programador especificar as configurações de uma página, incluir conteúdo a partir de outros recursos e especificar bibliotecas de marcas personalizadas para utilização em uma JSP. As ações encapsulam funcionalidades em marcas predefinidas que os programadores podem incorporar a uma JSP. As ações são freqüentemente realizadas com base nas informações enviadas ao servidor como parte de uma solicitação feita pelo cliente. Eles também podem criar objetos Java para utilização em scriptlets JSP. Os scriptlets permitem inserir código Java que interaja com os componentes em uma JSP (e possivelmente outros componentes de aplicativos Web) para realizar processamento de solicitações.

Durante o processamento de um request, várias páginas JSP podem estar envolvidas. Durante este processamento, diversos objetos podem ser criados, tanto usando diretivas JSP, como por ações definidas na página JSP ou ainda por trechos de código Java embutido na página JSP.

Qualquer objeto criado pode ser associado com um atributo de escopo, que define onde existe uma referência ao objeto e quando a referência é removida. Assim sendo, temos seguintes atributos:

  • Page: objetos acessíveis somente nas páginas em que foram criados;
  • Request: objetos acessíveis nas páginas que processam o mesmo request;
  • Session: objetos acessíveis nas páginas que pertençam a mesma sessão em que os objetos foram criados;
  • Application: objetos acessíveis nas páginas que pertençam a mesma aplicação

Servidor Tomcat

Uma aplicação Java para Web Container é uma coleção de documentos HTML/XML, componentes Java para Web (servlets e JSP) e outros recursos / arquivos. Esta coleção de arquivos é organizada em uma estrutura de diretório pré-definida conhecida como Web Warchive (WAR). Esta estrutura é esperada pelo container e devemos segui-lá rigorosamente, qualquer inconformidade resultará em um erro em tempo de instalação e às vezes de execução.

Para conseguir executar páginas JSP, é preciso instalar na sua máquina um servidor JSP. Por se tratar de uma extensão ao modelo de programação Java, o JSP pode ser executado em qualquer plataforma. Existem diversos servidores JSP espalhados na WEB, alguns deles, dispõem de versões para plataforma Windows e Linux. Um dos mais famosos é o Tomcat, do projeto Jakarta (http://jakarta.apache.org/tomcat), implementação de referência oficial das API"s vistos anteriormente.

Abaixo segue o procedimento de instalação do servidor Tomcat.

Passo 1: Instalação da Máquina Virtual.

Você necessitará, antes de tudo, ter a máquina virtual Java.

Se você não o tiver ainda, faça o download através do site da Sun. (http://java.sun.com/downloads/index.html).

Passo 2: Instalando o servidor Tomcat

1. Faça o download do servidor em:

http://jakarta.apache.org/builds/jakarta-tomcat-4.0/archives/v4.0.3/bin/

http://jakarta.apache.org/builds/jakarta-tomcat-4.0/release/v4.0.4/bin/

2. Execute a instalação ou caso tenha feito o download de um arquivo compacto, descompacte no diretório que desejar.

3. Configure a variável de ambiente TOMCAT_HOME no seu sistema operacional atribuindo o diretório onde instalou o Tomcat.

4. Para iniciar o servidor, execute o startup.bat presente no diretório TOMCAT_HOME/bin.

5. O Tomcat vem configurado para ser executado na porta 8080. Abra seu navegador e digite: http://localhost:8080

6. Se a página home do Tomcat , como na figura abaixo, for carregada, a instalação do Tomcat foi feita com sucesso.

As aplicações são armazenadas no diretório TOMCAT_HOME/webapps. Cada sub-diretório nesse local representa um projeto com seu próprio contexto e URL de acesso.

Existem diversos exemplos de implementação com uso de JSP, no endereço do seu servidor Tomcat:
http://localhost:8080/examples/jsp/index.html

A documentação pode ser encontrada em:
http://localhost:8080/tomcat-docs/index.html

Referências:

Eric C M Oliveira

Eric C M Oliveira - Bacharel em Ciencia da Computação/FASP e Comunicação/Unesp, tem experiência em desenvolvimento Java nas plataformas J2SE, J2EE e J2ME, além de atividades ligadas a disciplina de testes, engenharia e qualidade de software. Tem certificações Java SCJP 1.3, SCJP 1.4, Rational Test Management, Rational Robot e RUP (Rational Unified Process).