Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

Implementando Servidor Web Java, Notas de estudo de Informática

Este documento tem como propósito explicar todos os processos de instalação e configuração do Tomcat no Linux, bem como explicar alguns conceitos de manipulação do ambiente Java no Linux. Com este documento usuários e profissionais da área de TI terão condições de implementar soluções para aplicações Java que utilizam da web para o seu pleno funcionamento.

Tipologia: Notas de estudo

Antes de 2010

Compartilhado em 15/12/2009

cleydson-da-silva-2
cleydson-da-silva-2 🇧🇷

5

(2)

6 documentos

1 / 16

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Implementando Servidor Web Java com Tomcat no
Linux
Imagem customizada por Beatriz Ansani
Por: José Cleydson Ferreira da Silva
Twitter: cleysinhonv
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff

Pré-visualização parcial do texto

Baixe Implementando Servidor Web Java e outras Notas de estudo em PDF para Informática, somente na Docsity!

Implementando Servidor Web Java com Tomcat no

Linux

Imagem customizada por Beatriz Ansani

Por: José Cleydson Ferreira da Silva

Twitter: cleysinhonv

Sumário

  1. Introdução
  2. Configurando ambiente Java no Sistema Operacional Linux
  3. Procedimentos para a instalação do Tomcat
  4. Diretório e subdiretórios do Tomcat
  5. Procedimentos de configuração do Tomcat 5.1 Configurando usuários 5.2 Configurando o servidor 5.3 Configurando o contexto 5.4 Configurações fundamentais

Para que os programas javac (responsável por compilar a aplicação) e java (responsável por executar a aplicação) sejam reconhecidos pelo shell, é necessário que a variável de ambiente $PATH seja modificada. Além disso, também deve ser definida a variável de ambiente $JAVA_HOME, que deve apontar para o diretório onde o JDK foi instalado. Para isso, devem ser adicionadas as seguintes linhas ao arquivo bash.bashrc, (lembrando que o local de instalação do JDK pode variar, como no exemplo abaixo): Exemplo 1 export JAVA_HOME=/opt/java export PATH=/opt/java/bin:$PATH O pacote de instalação da Máquina Virtual Java está disponível no site http://java.sun.com/javase/downloads/index.jsp. Há dois tipos de arquivos binários, um com extensão rpm.bin para distribuições Linux derivadas do Red Hat, outro com extensão .bin para as demais distribuições. Após fazer o download, faremos o processo de instalação do pacote. Para padronizar o processo de instalação usaremos o diretório /opt. Usaremos esse diretório com o intuito de centralizar somente um diretório para o java no sistema, uma vez que ao instalálo poder íamos adicionálo ao diret ório /usr/bin mas caso haja necessidade de atualização de versão, acrescentar novas bibliotecas ou fazer backup, o diretório /opt se tornará mais acessível. Para iniciar o processo de instalação, copie o arquivo jdk6u13linuxi586.bin para o diretório /opt, a execução do mesmo se dará pelo comando sh seguido do nome do arquivo. Após a compilação, um subdiretório será gerado no diretório corrente com o mesmo nome do arquivo binário, portanto, renomeie a pasta para o nome “java” e, em seguida, defina no PATH o diretório no qual a pasta renomeada "java" está; esse processo não é uma convenção, é somente uma forma de padronização de instalação. No quadro 1 temos o passoapasso para a instala ção. Quadro 1

Comandos executados no terminal //Copiar para diretório /opt

cp jdk6u13linuxi586.bin /opt/

//Executar o arquivo

sh jdk6u13linuxi586.bin

//Renomear diretório

mv jdk1.6.0_13 java

//As duas linhas abaixo devem ser acrescentadas no arquivo bash.bashrc #vim /etc/bash.bashrc export JAVA_HOME=/opt/java export PATH=/opt/java/bin:$PATH //Testando variáveis de ambiente

echo $JAVA_HOME

echo $PATH

É importante testar a variável de ambiente após definila, pois ela s ó é reconhecida após sair da sessão atual. Em seguida, ao abrir uma nova sessão, podemos usar o comando echo nas variáveis de ambiente. Desta maneira padronizada, seu ambiente Java está pronto para ser usado.

3. Procedimentos para a instalação do Tomcat O Tomcat é um Servidor Web Java, capaz de processar aplicações java servelets, que são responsáveis por gerenciar dinamicamente requisições de pedido e resposta, que, em muitos casos, são consideradas extensões para Servidores Web Java. O Tomcat possui suas características próprias de servidores de aplicações, porém não dá suporte EJB Enterprise JavaBeans para aplicações distribuídas. Sua versão atual é a 6.0.20, lançada em 30 de Junho de 2008, pela Apache

É necessária a criação de um script para a inicialização do programa, quando o sistema operacional for inicializado. Este script deverá permanecer dentro do diretório /etc/init.d, onde será criado um link nativo para todos os diretórios da runlevel de inicialização. Também poderá ser colocado na inicialização padrão. Para saber a runlevel padrão que o sistema está utilizando, basta executar o comando runlevel no terminal, ou caso queira adicionálo em todos os diret órios de inicialização, usase o comando updaterc.d. Para que não seja necessário iniciar o tomcat todas as vezes que desligar ou reiniciar o computador, foi elaborado o seguinte script para inicialo todas as vezes que esse fato ocorrer: Quadro 3 Comando para script de inicialização do Tomcat //criar um arquivo no /etc/init.d/ #touch tomcat //Adicionar o texto abaixo

#!/bin/sh echo Inicializa tomcat export JAVA_HOME=/opt/java /opt/tomcat6/bin/catalina.sh start //Mudar a permissão de execução

chmod +x tomcat

//Adicionar o script na runlevel do sistema #updaterc.d tomcat defaults 99 //Adicionar o script na runlevel padrão (No Debian, Ubuntu) #ln n tomcat /etc/rc2.d/S99tomcat

4. Diretório e subdiretórios do Tomcat Assim como os diversos softwares que possuem um arquivo de configuração, não há diferença com o Tomcat. Por padrão, os arquivos de configuração do Sistema Operacional Linux estão alocados em um único diretório que contém subdiretórios de cada programa, que de fato é o /etc. Um exemplo de subdiretório clássico e conhecido em distribuições derivadas do Debian é o /etc/apache2/, diferente das distribuições derivadas do Red Hat que se encontram em /etc/httpd.conf. Conforme o padrão de instalação que usamos, o diretório /opt/tomcat tornouse um local onde concentramse todos os seus subdiret órios e arquivos, podendo assim proporcionar ao administrador do sistema uma melhor manipulação do mesmo em relação ao software que usa diversos subdiretórios do sistema. As vantagens desse sistema podem consistir em não somente facilitar para o usuário mas em outras rotinas diárias, como backup e centralização dos arquivos e diretórios que por sua vez poderiam estar em uma partição separada. No diretório /opt/tomcat/ estão todos os subdiretórios necessários para os seu funcionamento; abaixo há uma breve explicação:

  • /bin

Um dos primeiros procedimentos a serem tomados na configuração do programa é a definição de usuários, pois a administração do sistema ou programa dependerá desse ajuste para instalar qualquer sistema ou programa que será executado pelo Tomcat. Embora ao testar o seu funcionamento e perceber que o Tomcat está funcionando, como mostra a última linha do quadro 2 (www.localhost:8080), é de extrema importância a definição da função de cada usuário. Basicamente, os usuários podem desempenhar diferentes papéis, como administrador do Tomcat, gerente e usuário comum, que serão usados pelas aplicações Java. O arquivo de configuração encontrase em /opt/tomcat/conf, conforme o padr ão de instalação deste documento; caso o tenha instalado pelo mirror padrão de seus sistema operacional, podendo ser da linha Debian, o diretório será /etc/tomcat6. O arquivo está nomeado como tomcatusers.xml. Sua configuração consiste em definições de usuário, senha e qual papel será atribuído para este usuário. Como já mencionado os papéis, ou seja, a função que cada um pode desenvolver, é atribuída pelo parâmetro rolename dentro da tag , que, por sua vez, se encontra dentro da tag ; por padrão, aconselhase definir primeiramente os papéis e, em seguida, os usuários. A tag define os usuários, senhas e função, com os parâmetros username e password, como visto no exemplo 2. Exemplo 2 Modelo de arquivo de configuração de usuário

Os usuários que contém papel manager possuem privilégios para realizar ações juntamente com o Tomcat, como iniciar aplicações e configurações nos diversos arquivos de configuração e fazer a implantação das aplicações no servidor. As funções (papéis) dos usuários Tomcat e role1 são padrões do sistema, se por ventura n ão as encontrar ao abrir o arquivo, adicioneas. Para se orientar, use o exemplo 2. 5.2 Configurando o servidor Existem diversas formas de configurar o servidor. Embora seja interessante ou até mesmo necessário que saibamos todas as opções de configuração, não é o objetivo deste documento apresentar todas as opções, mas sim uma configuração básica essencial para o funcionamento. O arquivo de configuração do servidor encontrase no mesmo diret ório da configuração do usuário. O arquivo referente à configuração do servidor chamase server.xml; nele podese configurar quais portas ser ão utilizadas para a conexão, o protocolo e o redirecionamento de portas, dentre outros. Essas opções, por padrão, já vêm configuradas. Quando usamos uma aplicação compactada, ou seja, em arquivo.war, é necessário fazer a configuração da tag para que ela não seja descompactada ao ser instalada. Com isso é preciso configurar o atributo unpackWARs para receber o valor false; assim, ao ser reconhecida pelo programa (Tomcat) ela não será descompactada. O item 1 do exemplo 3 exibe a configuração desta tag. A utilização da extensão do arquivo war não é uma convenção você poderá utilizála em modo descompactado, por ém pode estar exposto a alguns erros. Caso escolha utilizála como subdiret ório, poderá copiar o diretório da aplicação (contexto) para o diretório /opt/tomcat6/webapps. Na tag podemos configurar a porta de conexão, que por padrão é a

userSubtree="true" roleName="objectClass"/> 5.3 Configurando o contexto Toda aplicação desenvolvida a ser instalada no Tomcat necessita de uma configuração em um arquivo web.xml, que se encontra dentro do subdiretório /WEBINF da aplicação. Podemos configurar dentro desse arquivo as descrições dos aplicativos e sua exibição, bem como o path, Display Name, sessões, dentre outras configurações. A configuração deste arquivo pode ser feita manualmente ou automaticamente, se usada a aplicação manager web do Tomcat (http://localhost:8080/manager/html). Geralmente, a instalação automática, por padrão, poderá fazer algum tipo de configuração; mesmo tendo isso a favor, podese configur álo conforme as indica ções. Ao desenvolver a aplicação, é necessário criar um arquivo web.xml dentro do subdiretório /WEBINF da aplica ção. Ele poderá possuir o mínimo de configuração, contendo somente o tipo de charset, podendo ser UTF8, que é padrão do Sistema Operacional Linux. Para melhorar a configuração da aplicação, devese abrir uma tag para colocar os atributos que poderão configurála, pois, por padr ão, ao colocar uma aplicação no diretório /opt/tomcat6/webapps, o Tomcat define o path, sendo preciso somente configurar a exibição do nome da aplicação que, para isso, configura o atributo apontando o nome e uma descri ção da aplicação com o atributo . Veja no exemplo 4 um modelo de configuração deste arquivo e na figura abaixo o resultado da configuração. Exemplo 4 Configuração do web.xml

Sistema de Teste (Artigo) Exemplo de Arquivo web.xml. 5.4 Configurações fundamentais Outra configuração importante é a configuração do uso de memoria RAM da máquina virtual no Tomcat (que como sabemos, é inteiramente desenvolvido em Java) sua interpretação se dá por meio da máquina virtual Java, que, por sua vez, fará o uso da memória exigindo um valor mínimo de 64MB por padrão mas caso essa aplica ção realize um número elevado de acessos a um banco de dados, poderá comprometer o serviço fazendo com que o processamento do servidor atinja o máximo do seu uso. Quando esse fato chega a acontecer, geralmente ocorrem erros de interpretação da maquina virtual java e perda do PATH, ocorrendo erros de interpretação do $JAVA_HOME Vari ável de ambiente. Para isso, precisamos configurar a JVM (Maquina Virtual). Essa configuração deve ser feita no arquivo catalina.sh, que se encontra no diretório /opt/tomCat6/bin. A sintaxe dos comandos a serem acrescentados neste arquivo estão mencionados no exemplo 5 item 1. O parâmetro Xmx768M indica a quantidade de memória que a JVM (Máquina Virtual Java) irá usar. O parâmetro XX:MaxPermSize=256M indicar á ao Tomcat a quantidade de memória RAM disponível a ele e os outros são para configuração de hora, linguagem e referência de fusohor ário. É importante lembrar que essa sintaxe deve ser adicionada após os comentários iniciais do arquivo, antecedendo os primeiros comandos do script. Essa configuração referese a uma quantidade de 1GB no total, que um computador esteja porventura usando; caso tenha mais que essa quantidade ou menos, siga a seguinte orientação: usar 3/4 da capacidade da memória RAM para o parâmetro Xmx768M e 1/4 para XX:MaxPermSize=256M. Outra observação importante que precisa ser colocada é a ausência do drive JDBC dentro da pasta lib do Tomcat. Caso deixe de colocar o drive nesta pasta, sua aplicação

Duser.timezone=America/Sao_Paulo Duser.language=pt Duser.country=BR" Considerações finais Sobre o autor José Cleydson Ferreira da Silva, graduando em Sistemas de Informação Faculdade de Vi çosaMG. Usuário do Linux por filosofia, acredita que o Software Livre e de Código Aberto podem mudar a forma e o modelo de mercado atual. Contatos Email, gtalk: cleysinhonv@gmail.com Twitter: @cleysinhonv Web site: www.cleysinho.blogspot.com Web site: www.gnulia.org Outros artigos: http://www.vivaolinux.com.br/artigos/userview.php?login=cleysinhonv Referência Bibliografica

  • http://tomcat.apache.org/
  • http://pt.wikipedia.org/wiki/Apache_Tomcat
  • http://luizgustavoss.wordpress.com/2009/02/06/visaogeraldatecnologiajava/
  • http://www.tiobe.com