Escolar Documentos
Profissional Documentos
Cultura Documentos
Novatec
Copyright 2010, 2015 Novatec Editora Ltda.
Histrico de impresses:
Julho/2015 Segunda edio
Maro/2014 Sexta reimpresso
Dezembro/2013 Quinta reimpresso
Abril/2013 Quarta reimpresso
Setembro/2012 Terceira reimpresso
Fevereiro/2012 Segunda reimpresso
Maro/2011 Primeira reimpresso
Outubro/2010 Primeira edio (ISBN: 978-85-7522-238-6)
29
30 Programao Java para a Web 2 Edio
A seguir, vamos instalar e configurar cada uma das ferramentas que compem nosso
ambiente de desenvolvimento.
Em nosso caso necessrio obter o pacote JDK (que tambm inclui o JRE). Dessa
forma, clique em Download na opo JDK 8 Update X. Na pgina seguinte, selecione
o ambiente (sistema operacional) de destino da instalao do pacote e a opo de
idioma. Prossiga o download conforme as instrues do site.
Configurao
Essa etapa da configurao s ser necessria caso tenhamos que executar o Java por
linha de comando. A princpio isso no obrigatrio, pois utilizaremos a ferramenta
Captulo 1 Preparao do ambiente de desenvolvimento 33
Eclipse para fazer o desenvolvimento Java. Porm, interessante manter essa confi-
gurao para uma necessidade futura.
No Windows, abra o Painel de ControleSistema, clique em Configuraes Avanadas do Sistema
e no boto Variveis de Ambiente, conforme a figura 1.3.
DICA: A varivel PATH serve para que os programas possam ser executados por linha de
comando (DOS) em qualquer diretrio, e no apenas naquele em que se encontra.
Por isso o caminho definido nessa varivel aponta para o \bin do JAVA_HOME, que onde
os executveis do Java se encontram.
34 Programao Java para a Web 2 Edio
Tomcat 8.0 no menu Downloads e voc ser direcionado para a pgina http://tomcat.apache.
org/download-80.cgi. Voc deve fazer o download do pacote em Binary Distributions\Core,
conforme a figura 1.7, sendo que voc deve escolher o pacote ZIP para Windows e o
TAR.GZ para Linux.
DICA: Para a instalao em Linux at poderia ser utilizado o pacote ZIP, porm a
desvantagem dele que o arquivo ZIP, quando extrado, no traz as permisses
dos arquivos. Dessa forma, voc teria que aplicar manualmente as permisses de
execuo nos arquivos de script.
Nessa pgina existe tambm a opo do pacote Windows Service Installer, que permite a
instalao do Tomcat por meio de um assistente no Windows. No caso, optaremos
pelo pacote ZIP, pois no Windows s necessrio descompact-lo.
DICA: No Linux e em modo texto, voc pode usar o comando wget para fazer o download
de qualquer arquivo da internet. No caso do download do Apache Tomcat, voc pode
executar o comando:
wget http://caminho/para.o/arquivo.tar.gz
Para garantir a existncia desse endereo, o melhor copiar a URL de download do
arquivo no site e utilizar o wget para fazer o download.
Figura 1.9 Console do Apache Tomcat, depois de ser inicializado com sucesso.
Abra seu navegador e digite http://localhost:8080. Dever aparecer uma pgina como
a da figura 1.10.
38 Programao Java para a Web 2 Edio
ALERTA: Todos os comandos que forem realizados usando o nome do arquivo com a
verso devem ser revisados para a verso que voc obteve no momento da leitura do livro.
ALERTA: Depois de alterar o arquivo /etc/profile, voc deve efetuar log-off e log-on para
que essa alterao tenha efeito.
Captulo 1 Preparao do ambiente de desenvolvimento 39
Teste da instalao
Depois de inicializar o Apache Tomcat, conforme o tipo de instalao, abra seu nave-
gador e digite http://localhost:8080. Dever aparecer uma pgina como a da figura 1.12.
O primeiro indicativo de que voc est tendo problemas com a numerao de portas
do Tomcat se a pgina principal acessada por http://localhost:8080 no abre. Para
confirmar o problema, o melhor a ser feito abrir o arquivo de log do Tomcat, lo-
calizado no diretrio [CATALINA_HOME]\logs. Localize o arquivo mais recente com
o nome catalina.AAAA-MM-DD.log (Exemplo: catalina.2015-02-15.log). Localizar nesse
arquivo o texto a seguir um indicativo de que ser necessrio alterar algumas portas.
java.net.BindException: Address already in use: JVM_Bind
DICA: Observe que esse arquivo pode estar acumulando mensagens de log de muitas
operaes do servidor no mesmo dia. Ento procurei essa mensagem mais prxima
do final do arquivo.
DICA: Esses nmeros podem aparecem em vrios locais ao mesmo tempo. Tome o
cuidado para que, nesse arquivo, alguns desses nmeros de portas apaream dentro
de comentrios. Isso pode causar alguma confuso, e a alterao pode ocorrer em
um lugar que no ter efeito.
Captulo 1 Preparao do ambiente de desenvolvimento 41
ALERTA: No primeiro acesso a essa pgina ser solicitada uma senha. Ao final desta
seo, vamos mostrar como configurar essa senha.
Alm disso, permite provocar um timeout em todas as sesses a cada aplicativo para
um tempo de vida determinado pelo acionamento do boto Expire Sessions. Esse um
recurso muito interessante para forar a liberao de memria em servidor. Na figura
1.13, voc pode observar a tela do manager.
42 Programao Java para a Web 2 Edio
Para o valor de -Xmx, voc deve levar em considerao a quantidade de memria livre
no computador ou servidor. Para o valor de Xms, voc deve considerar a quantidade
de memria que certamente ser consumida pelo aplicativo. Um valor muito baixo de
Xms far com que o Java tenha que fazer muitas operaes de realocao de memria,
o que consome muitos recursos da mquina e prejudica o desempenho.
Para definir esses parmetros, voc deve criar a varivel de ambiente CATALINA_OPTS,
como na figura 1.14.
DICA: O Apache Tomcat tem um arquivo padro para atribuir variveis de ambiente
especficas para uma determinada instalao. Sempre que o Tomcat for inicializado,
ele executar (caso exista) o arquivo setenv.bat ou setenv.sh. Nesse arquivo podem
ser definidas variveis de ambiente como CATALINA_OPTS, JAVA_HOME ou qualquer outra
que seja necessria.
DICA: Para conseguir monitorar o Apache Tomcat inicializado por dentro do Eclipse,
v ao menu Run > Run Configurations, selecione o Item configurado do Apache Tomcat e
coloque o -Xms256m -Xmx1024m -Dcom.sun.management.jmxremote no campo VM Arguments.
Figura 1.16 Tela principal do JConsole exibindo vrios grficos com estatsticas do processo
monitorado.
46 Programao Java para a Web 2 Edio
Instalao no Windows
Para instalar o Apache Tomcat como servio, primeiro v at a pasta \bin da instala-
o do Apache Tomcat via linha de comando. Nessa pasta dever existir o arquivo
service.bat. A sintaxe de utilizao ser:
service.bat install/remove [service_name]
Para instalar, execute o comando service install, como a seguir:
C:\apache-tomcat-8.0.17\bin>service install
Sada do comando:
Installing the service 'Tomcat8' ...
Using CATALINA_HOME: "C:\apache-tomcat-8.0.17"
Using CATALINA_BASE: "C:\apache-tomcat-8.0.17"
Using JAVA_HOME: "C:\Program Files\Java\jdk1.8.0_31"
Using JRE_HOME: "C:\Program Files\Java\jdk1.8.0_31\jre"
Using JVM: "C:\Program Files\Java\jdk1.8.0_31\jre\bin\server\jvm.dll"
The service 'Tomcat8' has been installed.
Para desinstalar o servio, utilize o comando service remove.
Observe que, na sintaxe do comando, existe o parmetro opcional service_name. Isso
significa que voc poder definir um nome para o servio a ser instalado, caso con-
trrio, ser utilizado o nome Tomcat8.
importante salientar que existem vrias mudanas na forma de configurar o Apache
Tomcat ao utiliz-lo como servio, principalmente quanto aos parmetros de iniciali-
zao, que foram expostos na seo 1.3.2.4, com relao ao uso da varivel CATALINA_OPTS.
Em resumo, essa varivel no considerada quando se utiliza o Tomcat como servio.
A alternativa para continuar realizando esse tipo de configurao no Tomcat como
servio utilizar o aplicativo [CATALINA_HOME]\BIN\tomcat8w.exe. Porm esse apli-
cativo s funcionar para o servio instalado caso o nome do servio seja Tomcat8.
DICA: Muito provavelmente podero ser executados vrios servios do Apache Tomcat
em um mesmo servidor. Para poder configurar esses servios utilizando o aplicativo
tomcat8w.exe, basta duplic-lo e renome-lo considerando o padro [service_name]
w.exe. Por exemplo, se voc quiser um novo servio do Tomcat com o nome tomcatTeste,
dever instalar o servio usando o comando service install tomcatTeste, duplicar o
tomcat8w.exe e renomear para tomcatTestew.exe.
Captulo 1 Preparao do ambiente de desenvolvimento 47
Mais informaes sobre a configurao do Apache Tomcat como servio podem ser
obtidas em http://tomcat.apache.org/tomcat-8.0-doc/windows-service-howto.html.
Em nosso caso, a melhor opo a Eclipse IDE for Java EE Developers. Nesse item, clique
no sistema operacional desejado direita e veja que existem opes para Windows,
Mac OS e Linux, 32 e 64 bits.
Na pgina seguinte ser oferecido um local no qual voc far o download do Eclipse,
ou voc pode percorrer a lista logo abaixo na mesma pgina e fazer o download de
um local mais prximo do Brasil, por exemplo. Clique no link de um local, conforme
a figura 1.21.
por meio do parmetro data no atalho. Isso permite ter apenas uma instalao do
Eclipse e vrios atalhos apontando para workspaces diferentes. O parmetro data
deve ser informado em um atalho criado para o eclipse.exe, conforme a figura 1.23.
ALERTA: Todos os comandos que forem realizados usando o nome do arquivo com
a verso devem ser revisados para a verso que voc obteve no momento da leitura
do livro.
mkdir /home/<usurio>/java
cp /home/<usurio>/Downloads/eclipse-jee-*.tar.gz /home/<usurio>/java/
cd /home/<usurio>/java
tar xvfz eclipse-jee-*.tar.gz
Esse comando gera uma pasta eclipse com o contedo da instalao do Eclipse IDE.
Depois de extrado, entre na pasta eclipse e execute o comando sudo ./eclipse para
executar o Eclipse IDE, conforme a figura 1.24.
View Descrio
Debug Exibe a lista dos processos Java em execuo.
Variables Mostra as variveis envolvidas na execuo atual e seu respectivo valor.
possvel tambm alterar o valor de alguns tipos de variveis manu-
almente, no meio da execuo.
Breakpoints Exibe os pontos de parada obrigatria para a execuo da classe Java.
Console Exibe as mensagens de sada da execuo do programa. Toda mensagem
via System.out.println("Ol mundo") ser exibida no Console.
Geralmente, quando voc executar algum servidor ou classe Java em modo Debug,
o Eclipse sugere automaticamente que essa perspectiva seja ativada.
DICA: No topo da janela Preferences existe um campo com o texto type filter text.
Qualquer palavra que voc digitar nesse campo far com que o Eclipse s mostre
as opes de configurao que contenham essa palavra. Como essa janela contm
muitas opes de configurao, e esse nmero aumentar medida que voc instalar
novos recursos ou plugins, esse recurso bastante interessante. Um exemplo de
propriedade muitas vezes necessria e que difcil encontrar a configurao de
Proxy. Digite proxy nesse campo e o Eclipse rapidamente mostrar a opo correta
para configurao: GeneralNetwork Connections.
DICA: Outra forma de alterar a configurao do local no qual o servidor est instalado
pelo menu WindowPreferences: selecione a opo ServersRuntime Environment.
Para testar o funcionamento do Apache Tomcat por dentro do Eclipse, clique no boto
que realiza a execuo em modo Normal, na view Servers. Nesse mesmo instante, na
view Servers, aparecer o texto Starting junto ao item do servidor, e a view Console ser
exibida, mostrando as mensagens de sada do servidor, indicando que ele est em
processo de inicializao. Na figura 1.30, voc pode observar as mensagens do Console
indicando que o servidor foi inicializado com sucesso.
58 Programao Java para a Web 2 Edio
Figura 1.30 View Console exibindo as mensagens de sada do servidor durante o processo de
inicializao.
ALERTA: nesse momento que tambm podero ocorrer os erros de conflito de portas,
como foi comentado na seo 1.3.2.1. Nesse caso, o Eclipse tambm fornece um
meio de alterar essa configurao. Para isso, basta dar um duplo clique no nome do
servidor na view Servers, e ser exibida uma tela de configuraes, conforme a figura
1.31. Voc poder alterar os nmeros de portas pela aba Ports.
Figura 1.31 Tela de configurao do servidor, na qual possvel alterar os nmeros de portas,
entre outras configuraes.
Captulo 1 Preparao do ambiente de desenvolvimento 59
1.5 MySQL
O MySQL um dos bancos de dados de cdigo-fonte aberto mais popular do mundo,
tendo mais de 70 milhes de instalaes no mundo todo.
O fato de ser de cdigo-fonte aberto no significa que ele seja gratuito: isso depender
de como voc utilizar o banco de dados. Para que o MySQL possa ser utilizado gra-
tuitamente, o aplicativo que o utiliza tem que seguir a licena GPL. Isso basicamente
significa que, se voc no obtiver lucro com o seu aplicativo, no precisar pagar pelo
MySQL e que sempre dever distribuir os cdigos-fonte do MySQL junto com seu
aplicativo ou pelo menos indicar onde obt-los.
ALERTA: Para a instalao em Windows, no obtenha a verso MySQL Essentials, pois ela
vem com vrias ferramentas a menos no pacote.
Depois de clicar em Download, voc ser direcionado para uma pgina na qual inicial-
mente ser solicitado que voc se cadastre, o que no necessrio: apenas clique no
link No thanks, just take me to the downloads! abaixo da tela de cadastro para escolher um dos
60 Programao Java para a Web 2 Edio
espelhos para o download. Nesse caso, espelho refere-se aos vrios locais do mundo
nos quais os arquivos da instalao esto replicados (espelhados).
Setup Type
Onde se define o tipo de instalao que ser realizada, mantenha marcada a opo
Server Only, pois a opo mais enxuta e que atende as necessidades do projeto. Clique
em Next e prossiga a instalao at o passo Type and Networking.
DICA: O uso de uma senha como essa no recomendado caso voc esteja em um
ambiente real de desenvolvimento em uma empresa. Muito menos se estiver instalando
um servidor de produo.
ALERTA: Se voc j teve alguma vez instalado o MySQL em seu computador mesmo
que tenha desinstalado-o corretamente , a senha root definida continua valendo. Se
voc fizer uma nova instalao do MySQL, essa senha ser solicitada por meio do
campo Current Password que ser exibido.
62 Programao Java para a Web 2 Edio
Windows Service
Nesta etapa definido o nome do servio que executar o MySQL. Mantenha as
opes padro, conforme a figura 1.34.
Figura 1.36 Tela na qual possvel gerenciar os bancos de dados e executar comandos SQL.
Captulo 1 Preparao do ambiente de desenvolvimento 65
Ainda na figura 1.35, no painel Models possvel desenhar o banco de dados de forma
visual, permitindo uma viso bem organizada e apelo visual ao modelo entidade-
-relacionamento MER, conforme a figura 1.37. Esse passo ser desnecessrio para o
projeto do livro, j que o banco de dados ser criado automaticamente pelo Hibernate.
1.6 Concluso
Finalizamos a instalao de todas as ferramentas que sero necessrias para o de-
senvolvimento do projeto proposto no livro. No decorrer da obra sero necessrios
novos downloads, apenas para instalao de componentes necessrios s etapas em
construo.