Você está na página 1de 25

APLICATIVOS DE LINGUAGEM DE PROGRAMAO ORIENTADA A OBJETOS (ALPOO) Prof. Msc.

Vladimir Camelo INTRODUO AO TOMCAT O Tomcat um servidor de aplicaes Java para web. software livre e de cdigo aberto, surgido dentro do conceituado projeto Apache Jakarta e que teve apoio e endosso oficial da Sun Microsystems como Implementao de Referncia (RI) para as tecnologias Java Servlet e JavaServer Pages (JSP). Atualmente, o Tomcat tem seu prprio projeto de desenvolvimento independente, dentro da Apache Software Foundation. O Tomcat robusto e eficiente o suficiente para ser utilizado mesmo em um ambiente de produo. Tecnicamente o Tomcat um container Web, cobrindo parte da especificao J2EE com tecnologias como JSP e Servlet, e tecnologias de apoio relacionadas como Realms e segurana, JNDI Resources e JDBC DataSources. O Tomcat tem a capacidade de atuar tambm como servidor web/HTTP, ou pode funcionar integrado a um servidor web dedicado como o Apache httpd ou o Microsoft IIS, ou ainda como parte integrante de um servidor de aplicaes mais amplo, como JBoss AS, provendo os recursos de Java Servlet e JSP. O Tomcat porm no implementa um continer EJB. Para aplicaes Java Enterprise Edition (Java EE) que utilizam Enterprise JavaBeans (EJB), voc deve procurar um servidor de aplicaes Java EE completo, como JBoss AS (software livre), GlassFish (software livre), Apache Geronimo (software livre), IBM WebSphere (comercial), BEA WebLogic (comercial), Oracle AS (comercial), ou o Java EE SDK que inclui Sun Java System Application Server Platform Edition (gratuito), entre outros. INSTALAO DO TOMCAT As instrues abaixo foram escritas e testadas com base em instalaes do Tomcat 4.1, 5.0 e 5.5 em Windows, Unix e Linux. As configuraes aqui propostas so para criar um ambiente de desenvolvimento bem simples e independente de qualquer ambiente integrado de desenvolvimento (IDE), suficiente para um primeiro contato com o Tomcat e as tecnologias Java para web. 1. INSTALAR JAVA JSE SDK (JDK) O Tomcat inteiramente escrito em Java e, portanto, necessita de uma Java Virtual Machine (JVM) Mquina Virtual Java para ser executado. Assim, necessrio ter a plataforma Java Padro, Java 2 Platform Standard Edition (J2SE), previamente instalada. Na Tecnologia Java existem duas distribuies do J2SE, providas pela Sun Microsystems:

Java Runtime Engine (JRE) Mecanismo de Execuo Java: inclui a JVM, bibliotecas e outros componentes necessrios para executar aplicaes ou applets escritas em linguagem Java. o produto adequado para quem apenas usurio da tecnologia Java.

Software Development Kit (SDK) Kit de Desenvolvimento de Software do J2SE, mais conhecido como J2SE Development Kit (JDK): inclui todo o JRE, mais ferramentas de linha de comando como compilador, debugador e outros componentes necessrios para construir aplicaes Java.

Para a instalao do Tomcat em ambiente de desenvolvimento, onde sero desenvolvidas classes Java em geral, incluindo Servlets e pginas JSP, deve-se utilizar o JDK completo. A verso mais atual do Java SE (JSE / J2SE) a 6, lanada em dezembro de 2006. As verses anteriores, Java 5, desde setembro de 2004, e J2SE 1.4.2, desde junho de 2003, ainda so suportadas pela Sun. As atualizaes mais recentes de SDK so JDK 6.0 Update 7 e JDK 5.0 Update 11 (Windows, Linux e Solaris). O mais adequado utilizar a verso JDK 6, que inclui todas as melhorias e facilidades atuais para a tecnologia Java padro. O Java SE mais recente plenamente compatvel com as verses anteriores, exceto raras excees. A plataforma Java SE (JRE e JDK) disponibilizada nativa para cada sistema operacional suportado pela tecnologia Java. O JDK disponibilizado pela Sun Microsystems, desde o lanamento inicial da verso 5.0 do Java SE, para os sistemas operacionais Windows, Linux e Solaris. A HP fornece o JDK para o sistema HPUX desde dezembro de 2004; e a Apple disponibiliza o JDK 5.0 para seu sistema Mac OS X desde abril de 2005.Para obter o Java SE SDK (JDK) e informaes sobre a instalao em seu sistema operacional, acesse o link correspondente: Windows, Linux e Solaris (32 e 64 bits)
Download: http://java.sun.com/javase/downloads/ (JDK 6), ou anteriores JDK 5.0, J2SE 1.4.2 SDK Informao: Java SE 6 Notas de Verso - Instalao da Platforma; ou veja Notas de Instalao e

Configuraes de Sistema Suportadas para as verses anteriores 5.0 ou 1.4.2 Mac OS X


Download: Apple - Java Downloads, Apple Software Updates Informao: Apple Developer Connection: Java, Java for Apple Mac OS X

HP-UX
Download: Java technology software for HP-UX Informao: HP Unix - Java Information Library

FreeBSD
Download: FreeBSD JDK Distributions Informao: FreeBSD Java Project Home-page: http://java.sun.com/javase/

Observao: possvel haver vrias verses de JDK/JRE instaladas no computador em locais distintos, convivendo sem problema. Neste caso, importante ficar atento a qual verso ser selecionada para uso do Tomcat. A varivel de ambiente padro JAVA_HOME deve ser definida (e mantida atualizada) indicando o local de instalao do J2SE preferencial (veja item 1.3 adiante). Esta varivel consultada pelo Tomcat e vrios outros sistemas baseados em Java para determinar a JVM preferencial. As etapas e ilustraes a seguir se baseiam na verso 6.0 Update 1. Outras verses podem apresentar ligeiras alteraes no processo de instalao. 1. Antes de iniciar a instalao, fechar todos os programas em execuo, em especial navegadores web e outros programas que possam estar executando um ambiente Java. Com isso, reduz-se a possibilidade de ser necessrio reiniciar o computador aps a instalao. 2. Iniciar o programa instalador. O assistente de instalao ser preparado e, em seguida, iniciado. No dilogo de Boas-vindas, clicar em "Next".

3. Estando de acordo com os termos da licena do software, clicar em "Accept" para prosseguir.

4. Na escolha de componentes do software, todos os componentes j vm selecionados por padro. Neste passo, tambm pode-se escolher a pasta destino da instalao. Embora seja recomendado manter o padro, pode-se alterar este local de instalao, clicando no boto "Change".

At o J2SE 1.4, o local padro de instalao do SDK era diretamente a partir da raiz do disco principal, similar a C:\j2sdk1.4.2_06\, enquanto o JRE ficava em uma pasta dentro de \Arquivos de programas\Java\. A partir do J2SE 5.0, tanto o JDK quanto o JRE ficam dentro desta pasta Java, ficando mais coerente com a organizao padro de programas instalados no Windows

Pressionar "Next" para iniciar a efetiva instalao. 5. Aguardar o processo de instalao, que um pouco demorado. Por alguns momentos, a barra de progresso pode parecer "congelada. Verificando a luz indicativa de atividade do disco rgido do computador, possvel conferir que a instalao prossegue.

6. Terminada a instalao dos arquivos do Java 2 SDK SE, automaticamente iniciada a instalao do ambiente Runtime Java (JRE), em uma nova janela de assistente. Pressionar "Next".

7. Ao trmino da instalao, o assistente informa que o J2SE Development Kit foi instalado com sucesso. Clicar "Finish" para sair.

Complementando a instalao do Java 2 SDK, definir a varivel de ambiente JAVA_HOME apontando para seu local de instalao. Esta varivel de ambiente padro usada pelo Tomcat e vrios outros sistemas baseados em Java, para determinar a JVM preferencial. Isto muito importante se houver mais de uma instalao de J2SE no computador, mas a varivel JAVA_HOME deve ser definida mesmo se houver apenas uma verso instalada. Importante: Modificar o caminho para JAVA_HOME de acordo com o local de instalao do JDK no computador. Nota: Quando instalar uma nova verso de Java, lembrar de tambm atualizar a varivel de ambiente JAVA_HOME.

Windows 2000 ou superior: Acessar o "Painel de Controle" > Sistema > aba "Avanado". Pressionar o boto "Variveis de ambiente". No grupo "Variveis do sistema" (recomendado, pois fica valendo para todos os usurios), ou ainda "Variveis de usurio" (se desejar apenas para seu usurio), criar uma nova varivel JAVA_HOME, ou editar se j existente, definindo como valor o caminho da pasta de instalao C:\Arquivos de programas\Java\jdk1.6. A nova configurao passa a valer imediatamente aps o "OK", exceto para janelas de prompt de comando (console) j abertas. Windows 9x / NT: Editar o arquivo autoexec.bat, para incluir a linha: set JAVA_HOME=C:\Arquivos de programas\Java\jdk1.6.0 Reiniciar o sistema para a nova configurao ser efetivada. Unix / Linux: Editar o profile do usurio (para sh: ~/.profile) ou global do sistema (/etc/profile), para incluir a linha: JAVA_HOME=/opt/j2se; export JAVA_HOME Reinicie a sesso ou terminal para a nova configurao ser efetivada. INSTALAR O TOMCAT O Tomcat tem evoludo paralelamente evoluo da Plataforma Java EE e suas especificaes para web, especialmente Java Servlet e JavaServer Pages (JSP). O quadro a seguir relaciona as verses de Tomcat com as respectivas verses de tecnologias suportadas. Tomcat 6.0 5.5 4.1 Servlet 2.5 2.4 2.3 JSP 2.1 2.0 1.2 JavaEE Java EE 5.0 J2EE 1.4 J2EE 1.3

recomendvel utilizar a verso mais atualizada Tomcat 6.0, que suporta as especificaes e tecnologias mais recentes e o foco principal de desenvolvimento do projeto Tomcat. A maior parte dos recursos atuais compatvel com verses anteriores. A verso estvel mais recente era Tomcat 6.0.13 (APIs Servlet 2.5 e JSP 2.1, integrantes do Java EE 5.0). O download do instalador para Windows pode ser acessado no site primrio em

http://www.apache.org/dist/tomcat/tomcat-6/v6.0.13/bin/apache-tomcat-6.0.13.exe (instalador com servio Windows). A pgina principal de download apresenta todas as alternativas de verses de Tomcat e repositrios de download (mirrors). Importante: O Tomcat 6.0 requer JRE/JDK 5.0 ou superior. O Tomcat 5.5 suporta tambm J2SE 1.4.x, mas necessrio o download e instalao de um pacote adicional de compatibilidade (apache-tomcat5.5.*-compat.zip). Tomcat 4.1 e 5.0 exigiam um JDK instalado. O Tomcat 5.5 em diante necessita apenas do JRE, embora o JDK continue til para o desenvolvedor. De qualquer forma, interessante que esteja definida a varivel de ambiente JAVA_HOME apontando para o local de instalao do JDK mais atual. Importante - Tomcat

Windows: No passo "Java Virtual Machine path selection" do instalador, informar o caminho correto do JDK. Na instalao Windows, a seleo de componentes personalizada (Custom) permite instalar e ativar o Tomcat como servio no Windows NT/2000 ou superior, pelo item "Service". No Tomcat 5 em diante, o servio sempre instalado e o item "Service" apenas escolhe a sua ativao automtica na inicializao do Windows. O diretrio principal (local de instalao) do Tomcat referenciado posteriormente neste tutorial como CATALINA_HOME. Na documentao e scripts do Tomcat, esse diretrio tambm referenciado assim, pois Catalina o nome-cdigo do projeto Tomcat e seu continer servlet. Importante: O separador de diretrios mais usado aqui a barra normal (/) do Unix e Linux; usurios do Windows devem substituir pela barra-invertida (\) quando apropriado. A barra de Unix aceita como separador de diretrio mesmo em Windows nos arquivos de configurao do Tomcat e pelos programas java e javac. Passo-a-passo do processo de instalao e configurao inicial do Tomcat: 1. Inicar o programa instalador. O assistente de instalao ser iniciado. No dilogo de Boas-vindas, clique "Next".

2. Estando de acordo com os termos da licena do software, clicar "I Agree" para prosseguir. O Tomcat software aberto, de re-distribuio e uso (comercial ou no) livres e gratuitos.

3. Na escolha de componentes do software, o padro o tipo de instalao "Normal", que inclui, alm do ncleo essencial (core) do Tomcat Servlet container, toda a documentao, exemplos de Servlet e JSP e os cones no Menu Iniciar. Esta seleo adequada para o uso geral. Na verdade, ficam de fora da instalao Normal apenas a ativao automtica do Tomcat como servio e o cdigo-fonte do Tomcat. Este ltimo s ser de alguma utilidade para quem quiser participar do projeto de desenvolvimento do Tomcat, ou ainda quiser conhecer a fundo os mecanismos de funcionamento e a implementao do Tomcat inspecionando seus fontes, e no apenas utiliz-lo.

A instalao do Tomcat 5 sempre cria um servio do Windows (NT/2000/XP/2003) para o Tomcat. Na opo Normal, porm, o servio instalado com ativao manual. Para que o servio do Tomcat seja automaticamente ativado sempre que o Windows for iniciado, basta expandir o componente "Tomcat" e selecionar o componente "Service", conforme mostrado a seguir, e o instalador j configurar isto. O tipo de instalao mudar para "Custom" (personalizada). De qualquer forma, o tipo de inicializao do servio do Tomcat pode ser facilmente alterado entre Manual ou Automtico a qualquer tempo aps a instalao, atravs da ferramenta administrativa de Servios do Windows.

4. A seguir, ser confirmado o local de instalao do software. Confirmar a pasta principal onde o Tomcat ser instalado e clicar "Next" para prosseguir.

5. O dilogo de Configurao permite definir duas opes administrativas do Tomcat: o porto de rede pelo qual o Tomcat atender as requisies HTTP, funcionando como um servidor web com o propsito de testes e administrao do Tomcat, e o usurio e senha para o acesso Administrao do Tomcat. A menos que no computador j exista outro servio simultneo utilizando o porto padro 8080 do Tomcat, recomendvel deixar o porto inalterado. Em especial, deve-se ter muito cuidado ao tentar modificar para o porto 80, que o padro para o protocolo HTTP e usado pelos servidores web como o Microsoft IIS e o Apache Web Server (httpd). Esta configurao pode ser alterada aps a instalao, pelo arquivo de config do Tomcat. 6. A senha do usurio administrativo do Tomcat (nome padro "admin") pode ser deixada em branco, mas altamente recomendvel definir uma senha, uma vez que se trata de um servio de rede. Em um servidor ou estao, acessvel via LAN (rede interna) ou Internet, onde o Tomcat ficar ativo constantemente, recomendvel ainda definir um nome de usurio diferente do padro, para maior segurana.

7. O instalador do Tomcat procura detectar uma verso de Java Runtime (JRE) instalada, necessria para seu funcionamento. Diferente do Tomcat 5.0 e 4.1, que necessitavam do Java Development Kit (JDK) para compilar pginas JSP, o Tomcat 5.5 j inclui e usa o complilador Java Eclipse JDT para compilao de pginas JSP. Isto significa que no h necessidade mais do JDK completo para rodar o Tomcat verso 5.5, basta o Java Runtime Environment (JRE). Como ajuste posterior avanado, o

Tomcat 5.5 pode ainda ser configurado para utilizar um compilador alternativo ao compilar JSPs, como o compilador Java do JDK ou qualquer outro suportado pelo Apache Ant.

8. Completadas as informaes solicitadas pelo assistente, clicar "Install" e aguardar o trmino da instalao.

9. Ao trmino da instalao, o assistente d a opes de executar o Tomcat pela primeira vez e de visualizar o Leia-Me. A opo "Run" do instalador do Tomcat 5.5 executa o Tomcat como processo ou servio, de acordo com o que foi selecionado na instalao.

possvel executar o Tomcat instalando como servio (Windows NT/2000 ou superior), com inicializao automtica ou manual; ou execut-lo como processo isolado (qualquer sistema operacional), pelo atalhos no grupo de programa (Windows) ou por scripts shell (.bat/.sh).

[Windows] Para iniciar, parar e reiniciar o Apache Tomcat, quando instalado como servio, bem como configurar o tipo de ativao do servio como Manual ou Automtico, utilize o Gerenciador de Servios do Windows em: Iniciar > Configuraes > Painel de Controle > Ferramentas Administrativas > Servios (ver imagem). Atravs do prompt de comandos, pode-se tambm iniciar e parar o servio: Tomcat 5 Iniciar: net start "Apache Tomcat" Parar: net stop "Apache Tomcat" Tomcat 4.1 Iniciar: net start "Apache Tomcat 4.1" Parar: net stop "Apache Tomcat 4.1"

[Windows] Para iniciar e parar o Tomcat 5 como servio, usando o Apache Service Manager (Procrun) fornecido com o Tomcat: Iniciar o Apache Service Manager, utilizando o atalho em: Iniciar > Programas > Apache Tomcat 5 > Monitor Tomcat. Deve surgir um pequeno cone na rea de notificao da barra de tarefas do Windows (ao lado do relgio). Este cone indica o estado atual do servio Tomcat (quadrado vermelho = parado, tringulo verde = iniciado). Clique no cone com o boto direito do mouse; no menu de contexto que se abre, escolha "Start service" ou "Stop service"

Nota: O Tomcat Monitor foi atualizado vrias vezes durante a evoluo do Tomcat 5. OS procedimentos e ilustraes apresentados refletem o Apache Service Manager incluso no Tomcat 5.0.22 em diante.

Para iniciar e parar o Tomcat como processo pelo prompt de comandos (console ou shell) do sistema operacional: 1. Definir as variveis de ambiente JAVA_HOME e CATALINA_HOME, para apontar o diretrio principal da instalao do Java SDK e do Tomcat, respectivamente. O recomendado criar o script [Windows] setenv.bat ou [Unix] setenv.sh dentro de CATALINA_HOME/bin, com estas configuraes (veja item 13 deste tutorial); 2. No diretrio bin do Tomcat: [Windows] cd %CATALINA_HOME%\bin [Unix] cd $CATALINA_HOME/bin

3. Executar o script desejado: Iniciar: [Windows] startup.bat ou catalina start [Unix] startup.sh ou catalina.sh start Parar: [Windows] shutdown.bat ou catalina stop [Unix] shutdown.sh ou catalina.sh stop

[Windows] Para iniciar e parar o Tomcat 4.1 graficamente como processo, existem atalhos em: Iniciar > Programas > Apache Tomcat 4.1. Use o atalho "Start Tomcat" para iniciar o Tomcat; e "Stop Tomcat" para finalizar.

Observaes importantes para a plataforma Windows:

Um erro comum ter o Tomcat j iniciado como servio e tentar inici-lo novamente, como processo. A segunda execuo no conseguir ser iniciada, acusando que j existe algum servidor utilizando a sua porta. Neste caso, obviamente seria necessrio antes parar o servio, se realmente fosse desejado iniciar o Tomcat como processo.

Quando o Tomcat iniciado como processo console, abre-se uma janela console. Manter a janela aberta e no fechar manualmente. A janela console fecha automaticamente quando acionado o comando de encerrar o processo (Shutdown do Tomcat).

Para testar se o Tomcat est rodando ok aps iniciado, abrir o browser e digitar o endereo: http://localhost:8080/. Na home-page padro do Tomcat, o link "Tomcat Documentation" d acesso a toda a documentao necessria, instalada localmente, inclusive a API Servlet/JSP da Sun, inclusa com o Tomcat. O Tomcat inclui ferramentas via interface Web para administrar e gerenciar o servidor, bem mais amigveis do que editar arquivos de configurao. O instalador Windows solicita o login de usurio (padro admin) e a senha para acesso a estes recursos. Para utilizar estas ferramentas, acessar a home-page padro do servidor e seguir os seguintes links, no quadro "Administration": Tomcat Manager Permite gerenciar as aplicaes iniciar, parar, re-iniciar, fazer deploy (distribuio) e undeploy bem como monitorar o estado do servidor. Tomcat Administration Permite criar, excluir e configurar Servios e seus elementos internos (Connector, Host, Alias, Context, Logger, Valve) do Servidor Tomcat, bem como Recursos (Data Source etc.) e Autorizaes (User, Group,

Role). Estes itens correspondem aos elementos e atributos disponveis no arquivo de configurao server.xml. Ateno: No Tomcat 5.5, a aplicao Administration no mais instalada por padro. necessrio fazer download e instalao do pacote adicional apache-tomcat-5.5.*-admin.tar.gz para us-la. No alterar nada na estrutura e caractersticas da configurao sem saber o que est sendo feito. Contudo acessar a ferramenta de Gerenciamento (Tomcat Manager), fornecer o login e senha do usurio administrativo configurado na instalao e visualizar o Estado do servidor, que apresenta uma srie de informaes tcnicas sobre o funcionamento do servidor Tomcat possvel, sem muitos conhecimentos. Administrao Avanada: Uma poderosa ferramenta independente de monitoramento e gerenciamento para o Apache Tomcat o Lambda Probe, projeto de software livre. uma alternativa avanada e ampliada ao Tomcat Manager. Lambda Probe compatvel com Tomcat 5.x e 6 (Probe 1.7b) e roda como uma aplicao web (contexto) instalada no prprio Tomcat. Para executar os servlets e JSPs, preciso coloc-los dentro de um contexto de aplicao web (ServletContext). Cada contexto uma unidade de aplicao web Java (servlet/JSP) que possui suas prprias configuraes. Para organizar o desenvolvimento, interessante criar um contexto novo e ativar sua opo reloadable (recarga automtica das classes modificadas). Para isso, fazer o seguinte: Estrutura de diretrios Criar um diretrio que ser a estrutura de desenvolvimento web Java. Uma organizao simples sugerida a seguinte:

Supondo que diretrio "dev" seja em C:\dir\dev\ (Windows), assim, o mdulo web ficaria em C:\dir\dev\web. Esta estrutura, apesar de simples, costuma ser suficiente e adaptvel ao modelo de organizao da maioria das ferramentas (IDEs) de desenvolvimento Java (como Eclipse, JDeveloper etc.), ao menos para um nico projeto. NetBeans,

Criar contexto de aplicao web A tarefa aqui consiste em criar no Tomcat um novo contexto de aplicao web, para o ambiente de desenvolvimento. Existem basicamente trs meios de se criar um contexto no Tomcat, cuja configurao corresponde a um cdigo XML com um elemento Context:

Usar um dos mecanismos de Deployment Automtico de Aplicao do Host no Tomcat. Este o meio mais recomendado, pois permite configurao automtica do contexto na inicializao e atualizao dinmica da aplicao web durante a execuo do Tomcat. Usa-se este meio na forma mais simples e direta, criando um arquivo XML separado com as configuraes do contexto.

Editar o arquivo de configurao principal do servidor Tomcat. Consiste em criar um elemento Context diretamente no arquivo conf/server.xml, dentro de um elemento Host. Este meio, ainda muito usado at o Tomcat 4, no mais recomendado a partir do Tomcat 5, em prol do Deployment Automtico. A criao de um contexto pelo arquivo server.xml tem vrias desvantagens: no dinmica pois atualizaes neste arquivo s podem ser re-lidas reiniciando o Tomcat, cria o risco de invalidar toda a configurao do servidor se for cometido um erro na sintaxe de uma tag de contexto, e mistura configuraes de servidor com configuraes de contexto.

Pela aplicao de Administrao do Tomcat com interface web, quando instalada.

Existem ainda outras formas de criao e configurao automtica de um contexto de aplicao web, como o uso de um pacote Web Application Archive (WAR) e o arquivo META-INF/context.xml dentro do WAR. Para o novo contexto chamado dev, deve-se criar um arquivo de configurao XML. Esse arquivo deve ficar em: Tomcat 5:

CATALINA_HOME/conf/Catalina/localhost/dev.xml
Catalina o mecanismo e localhost (mquina local) o hostname padro. Tomcat 4:

CATALINA_HOME/webapps/dev.xml
webapps o diretrio base de aplicaes definido no atributo appBase do Host. Crie o arquivo dev.xml na localizao j descrita, com o contedo do quadro a seguir. O contedo a definio do Context e seu Logger, precedida pela tag de identificao de arquivo XML:
<?xml version="1.0" encoding="iso-8859-1"?> <Context path="/dev" docBase="C:/dir/dev/web" reloadable="true" crossContext="true" debug="3"> <Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_dev_log." suffix=".txt" timestamp="true" verbosity="4" />

</Context>

O principal atributo definido o docBase do elemento Context, especificando o caminho completo para o diretrio base dos arquivos desta aplicao web. Modificar este atributo para informar a localizao do dev/web em seu computador. Como este um ambiente de desenvolvimento, configuram-se tambm atributos para gerar mais detalhamento nas mensagens de log. O atributo debug do elemento Context define o nvel de detalhamento de mensagens de depurao geradas pela implementao de contexto do Tomcat. Nmeros maiores geram sada cada vez mais detalhada. O valor padro, se o atributo for omitido, 0 (mnimo), adequado para um ambiente de produo. O atributo verbosity do elemento aninhado Logger destino de log do contexto define o nvel de mensagem reconhecido na sada de log; mensagens geradas com nvel superior ao verbosity so silenciosamente ignonadas pelo Logger. Os nveis disponveis so: 0 (erros graves), 1 (erros), 2 (avisos), 3 (informao), 4 (debug). O valor padro 1. Uma alternativa criao do arquivo dev.xml experimentar o uso da aplicao web de Administrao do Tomcat (Para ter a aplicao Administration no Tomcat 5.5, baixe e instale o pacote adicional apachetomcat-5.5.*-admin.tar.gz.). Neste caso, ao invs de criar o arquivo XML, seguir os passos: 1. Abrir a ferramenta Tomcat administrador via web e fornea o login (padro: admin) e senha do usurio administrativo, conforme configurado durante a instalao. 2. No navegador em rvore do frame esquerda, escolher: Tomcat Server > Service (Catalina) > Host (localhost). 3. No frame principal direita: Host Actions > Create New Context. 4. Preencher os atributos do novo contexto conforme o quadro do tpico anterior, que apresenta o cdigo do elemento Context. 5. Criar a seguir, dentro do novo contexto, um Logger para gerar arquivos de log separados para sua aplicao. Considerar os atributos tambm com base no mesmo quadro. O arquivo WEB-INF/web.xml o descritor do contexto de aplicao web, segundo a especificao Java Servlet/J2EE. As informaes nele contidas so as configuraes especficas da aplicao. O contexto de desenvolvimento ter apenas as seguintes configuraes:

informaes textuais de ttulo (elemento display-name, nome para exibio no Gerenciador) e comentrio de descrio (description) do contexto, teis para identificao e documentao;

uma definio servlet associada classe do invocador genrico InvokerServlet do Tomcat, usada para executar os servlets que voc criar;

um mapeamento (elemento servlet-mapping) genrico associando o padro de endereo URI /servlet/* definio do invoker criada, indicando que qualquer nome dentro do caminho /servlet/ neste contexto deve ser reconhecido como servlet e portanto repassado ao invoker do Tomcat para execuo.

Criar o arquivo web.xml descritor para o novo contexto de aplicao web criado, dentro do diretrio dev/web/WEB-INF/. Um contedo mnimo para ele, com as configuraes apresentadas, listado a seguir.
<?xml version="1.0" encoding="ISO-8859-1"?> <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4"> <display-name>Desenvolvimento</display-name> <description> Descritor do contexto de desenvolvimento. </description> <servlet> <servlet-name>dev-invoker</servlet-name> <servlet-class> org.apache.catalina.servlets.InvokerServlet </servlet-class> <init-param> <param-name>debug</param-name> <param-value>0</param-value> </init-param> <load-on-startup>2</load-on-startup> </servlet> <servlet-mapping> <servlet-name>dev-invoker</servlet-name> <url-pattern>/servlet/*</url-pattern> </servlet-mapping> </web-app>

O XML anterior se refere ao descritor de Aplicao Web da especificao Servlet 2.4. Para utilizar apenas recursos da verso anterior de descritor de Aplicao Web 2.3, substitua o cabealho do XML e a definio da tag raiz web-app conforme a seguir. Note que a estrutura do XML na verso 2.3 definida por um DTD definido na tag DOCTYPE, enquanto a verso 2.4 usa XML Schema (XSD), definido por atributos na prpria tag web-app.
<?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> ... </web-app>

Para garantir a ativao do novo contexto criado, reinicie o Tomcat (stop/start). Tomcat 5:

Logo aps a inicializao do Tomcat, o arquivo de log da saida padro do servidor Tomcat, criado em logs com o nome stdout.log, deve-se iniciar com um contedo similar ao trecho apresentado a seguir. A mensagem (em destaque no quadro) que indica que o contexto configurado pelo arquivo dev.xml foi processado. 12/09/2004 12:09:00 org.apache.coyote.http11.Http11Protocol init INFO: Initializing Coyote HTTP/1.1 on port 8080 12/09/2004 12:09:01 org.apache.catalina.startup.Catalina load INFO: Initialization processed in 2234 ms (...) 12/09/2004 12:09:06 org.apache.catalina.core.StandardHostDeployer install INFO: Processing Context configuration file URL file: .../Tomcat5.0/conf/Catalina/localhost/dev.xml O Tomcat 5 gera por padro muito menos mensagens em log para o contexto do que o Tomcat 4, de forma que a inicializao no gerada nenhuma mensagem no arquivo de log especfico do contexto. Por isso, no estranhe se voc no encontrar inicialmente nenhum arquivo localhost_dev_log.*.txt em logs.

Para testar o novo contexto, acessar o endereo: http://localhost:8080/dev/. Se foi criado um index.html no diretrio de desenvolvimento (dev/web/), deve-se ver esta pgina. Seno, ser vista apenas uma listagem do diretrio gerada pelo Tomcat. Se o Tomcat retornar a pgina de erro 404 - No Encontrado, houve algum problema de forma que o contexto no foi ativado. O problema mais comum haver algum erro de sintaxe no elemento Context no arquivo XML que define o contexto.
BIBLIOGRAFIA BSICA
ANSELMO, Fernando. Tudo sobre a JSP: com NetBeans em Aplicaes Distribudas. Florianpolis: Visual Books, 2005. MACEDO, Marcelo Silva. Construindo sites adotando padres Web. Rio de Janeiro: Cincia Moderna, 2004. BASHAN, Brian; SIERRA, Kathy; BATES, Bert. Use a cabea! JSP & servlets. So Paulo: Alta Books, 2005.

BIBLIOGRAFIA COMPLEMENTAR
MCLAUCHLIN, Brett. Use a cabea: AJAX. Rio de Janeiro: Alta Books, 2006. DEITEL, Harvey M. XML: como programar. So Paulo: Bookman, 2003. HUSTED, Ted. Struts em ao. Rio de Janeiro: Cincia Moderna, 2004. GONALVES, Edson. Desenvolvendo aplicaes Webcom JSP, ServletsJavaServer Faces, Hibernate, EJB 3

Persistence e Ajax. So Paulo: Cincia Moderna, 2007.


BORBA, Fernando E. Ajax: guia de programao. So Paulo: rica, 2006.

BIBLIOGRAFIA SUGERIDA

http://www.mhavila.com.br/topicos/java/tomcat.html http://tomcat.apache.org/download-60.cgi Tomcat 6.0 Setup, Tomcat 5.5 Setup, RUNNING.txt Tomcat 4.1 tomcat.apache.org

JSP E TOMCAT CONFIGURAO DO TOM CAT PARA EXECUTAR UM APLICATIVO JSP A primeira coisa que preciso fazer antes de poder executar um aplicativo JSP configurar o TomCat para que ele reconhea o aplicativo JSP. Para configurar TomCat para executar o aplicativo JSP em especial, as etapas so: (i) Criar um diretrio sob %CATALINA_HOME%/webapps, chamado, por exemplo, aplicacoesJSP. (ii) Criar um subdiretrio sob aplicacoesJSP, chamado, por exemplo, primeiro (iii) Acrescentar um subdiretrio chamado WEB-INF sob o diretrio primeiro. (iv) Reiniciar o TomCat. A estrutura de diretrio mostrada na figura abaixo:

ESCRITA E EXECUO DO ARQUIVO JSP

Uma pgina JSP consiste de tags HTML e o cdigo Java, interligados. As tags HTML representam a parte de apresentao e o cdigo produz o contedo. O cdigo a seguir um exemplo:
<HTML> <HEAD> </HEAD> <BODY> <% out.println("JSP &eacute facil"); %> </BODY> </HTML>

Salvar o arquivo como PaginaSimples.jsp no diretrio myJSPApp. Iniciar o browser e digitar a seguinte URL: http://localhost:8080/aplicacoesJSP/primeiro/PaginaSimples.jsp. O resultado dever ser o seguinte:

OUTRO EXEMPLO O exemplo abaixo utiliza a classe Calendar para capturar a hora atual e exib-la no browser. Salvar o arquivo como exemplo.jsp no subdiretrio primeiro e iniciar o browser com a seguinte URL: http://localhost:8080/aplicacoesJSP/primeiro/exemplo.jsp.
<HTML> <HEAD> </HEAD> <BODY> <% java.util.Calendar atual= java.util.Calendar.getInstance(); int hora = atual.get(java.util.Calendar.HOUR_OF_DAY); int minuto = atual.get(java.util.Calendar.MINUTE); if (hora<10) out.println("0" + hora); else out.println(hora); out.println(":"); if (minuto<10) out.println("0" + minuto); else out.println(minuto); %> </BODY> </HTML>

O resultado dever ser o seguinte:

MAIS UM EXEMPLO No exemplo abaixo um HTML (CadastroCliente.html) solicita informaes sobre um determinado cliente, atravs de um formulrio, e, no final, quando o usurio clica em confirmar, as informaes so passadas para um JSP (CadastroCliente.jsp) que organiza as informaes na tela. Salvar os arquivos, citados, no subdiretrio cadastro e iniciar o browser com a seguinte URL:

http://localhost:8080/aplicacoesJSP/cadastro/CadastroCliente.html Cdigo do arquivo CadastroCliente.html:


<html> <head> <style> p, td { font-family: Tahoma, Sans-Serif; font-size: 11pt; padding-left: 15; } </style> <title>Cadastro de Clientes</title> </head> <body bgcolor="#FFFFFF" text="#000000"> <form action="CadastroCliente.jsp" method=post name="cadastro"> <center> <table cellpadding=4 cellspacing=2 border=0> <th bgcolor="#CCDDEE" colspan=2> <font size=5>Cadastro de Clientes</font> <br> </th> <br> <tr bgcolor="#F7F7F7"> <center> <table cellpadding=4 cellspacing=2 border=0> <tr bgcolor="#F7F7F7"> <td valign=top> <b>Nome<sup>*</sup></b> <br> <input type="text" name="nome" value="" size=50 maxlength=50> </td> <td valign=top> <b>CPF<sup>*</sup></b> <br> <input type="text" name="cpf" value="000.000.000-00" size=14 maxlength=14> </td> </tr> <tr bgcolor="#F7F7F7"> <td valign=top> <b>Endere&#231;o<sup>*</sup></b> <br> <input type="text" name="endereco" value="" size=60 maxlength=60> </td> <td valign=top> <b>email<sup>*</sup></b> <br> <input type="text" name="email" value="" size=40 maxlength=40> </td> </tr> <tr bgcolor="#F7F7F7"> <td valign=top> <b>Telefone residencial<sup>*</sup></b> <br> <input type="text" name="telefone" value="0000-0000" size=9 maxlength=9> </td> <td valign=top> <b>Telefone celular</b> <br> <input type="text" name="celular" value="0000-0000" size=9 maxlength=9> </td> </tr> <tr bgcolor="#F7F7F7">

<td valign=top> <b>Sexo</b> <br> <input type="radio" &nbsp;&nbsp; <br> <input &nbsp;&nbsp;

name="tipo"

value="masculino"

checked>masculino

type="radio"

name="tipo"

value="feminino">

feminino

</td> <td valign=top> <b>Observa&#231;&#245;es</b> <br> <textarea name="observacao" rows="5" cols="30"></textarea> </td> </tr> <tr bgcolor="#F7F7F7"> <td valign=top> <b> * campos obrigatrios</b> </td> </tr> <tr bgcolor="#F7F7F7"> <td align=center colspan=2> <input type="submit" value="Confirma"> <input type="reset" value="Limpar"> </td> </tr> </table> </center> </tr> </table> </center> </form> </body> </html>

O resultado dever ser o seguinte:

Cdigo do arquivo CadastroCliente.jsp:


<html> <head> <style> p, td { font-family: Tahoma, Sans-Serif; font-size: 11pt; padding-left: 15; } </style> <title>Informaes do Cliente</title> </head> <body bgcolor="#FFFFFF" text="#000000"> <center> <table cellpadding=4 cellspacing=2 border=0> <th bgcolor="#CCDDEE" colspan=2> <font size=5>Informaes do Cliente</font> <br> </th> </table> <br> <% String nome = request.getParameter("nome").trim(); if(!nome.equals("")) out.println("Nome: " + nome); %> <br><br> <% String cpf = request.getParameter("cpf").trim(); if(!cpf.equals("")) out.println("CPF: " + cpf); %> <br><br> <% String endereco = request.getParameter("endereco").trim(); if(!endereco.equals("")) out.println("Endereo: "+ endereco);

%> <br><br> <% String email = request.getParameter("email").trim(); if(!email.equals("")) out.println("Email: " + email);%> <br><br> <% String telefone = request.getParameter("telefone").trim(); if(!telefone.equals("")) out.println("Telefone: " + telefone);%> <br><br> <% String celular = request.getParameter("celular").trim(); if(!celular.equals("")) out.println("Celular: " + celular); %> <br><br> <% String sexo = request.getParameter("tipo").trim(); if(!sexo.equals("")) out.println("Sexo: " + sexo); %> <br><br> <% String observacao = request.getParameter("observacao").trim(); if(!observacao.equals("")) out.println("Observao:"+ observacao); %> </center> </form> </body> </html>

O resultado dever ser o seguinte:

BIBLIOGRAFIA BSICA ANSELMO, Fernando. Tudo sobre a JSP: com NetBeans em Aplicaes Distribudas. Florianpolis: Visual Books, 2005. MACEDO, Marcelo Silva. Construindo sites adotando padres Web. Rio de Janeiro: Cincia Moderna, 2004. BASHAN, Brian; SIERRA, Kathy; BATES, Bert. Use a cabea! JSP & servlets. So Paulo: Alta Books, 2005. BIBLIOGRAFIA COMPLEMENTAR MCLAUCHLIN, Brett. Use a cabea: AJAX. Rio de Janeiro: Alta Books, 2006. DEITEL, Harvey M. XML: como programar. So Paulo: Bookman, 2003. HUSTED, Ted. Struts em ao. Rio de Janeiro: Cincia Moderna, 2004. GONALVES, Edson. Desenvolvendo aplicaes Webcom JSP, ServletsJavaServer Faces, Hibernate, EJB 3 Persistence e Ajax. So Paulo: Cincia Moderna, 2007. BORBA, Fernando E. Ajax: guia de programao. So Paulo: rica, 2006. BIBLIOGRAFIA SUGERIDA Kurniawan, B. Java para a Web com Servlets, JSP e EJB. Rio de Janeiro: Editora Cincia Moderna 2002.