Alpoo Aula Javaee - Parte II

Fazer download em pdf ou txt
Fazer download em pdf ou txt
Você está na página 1de 18

Java Enterprise Edition

MARCELO I LOIOLA
Tomcat

● Baixar e configurar
Tomcat

● Baixar e configurar
● Para instalar o Tomcat no Windows basta executar o arquivo .exe que
pode ser baixado no site do Tomcat (dê preferência ao zip). Depois
disso, você pode usar os scripts startup.bat e shutdown.bat,
analogamente aos scripts do Linux.
Jetty

● O Jetty é uma outra implementação criada pela MortBay (https://www.eclipse.org/jetty/) de


Servlet Container e HTTP Server. Em 2009 passou a ser hospedado na Fundação Eclipse.
● Pequeno e eficiente, ele é uma opção ao Tomcat bastante utilizada devido a algumas de
suas características. Especialmente:
○ facilmente embarcável;
○ escalável;
○ "plugabilidade": é fácil trocar as implementações dos principais componentes da API.
● O Jetty também costuma implementar, antes do Tomcat, ideias diferentes que ainda não
estão na API de servlets do Java EE.
Novo projeto

● Olhe bem a estrutura de pastas e verá algo parecido:



Novo projeto

● O diretório src já é velho conhecido. É onde vamos colocar nosso código fonte Java. Em
um projeto normal, essas classes seriam compiladas para a pasta bin, é costume se usar
a pasta build que vemos em nosso projeto.
● Nosso projeto será composto de muitas páginas Web e vamos querer acessá-lo no
navegador. Já sabemos que o servidor é acessado pelo http://localhost:8080, mas como
será que dizemos que queremos acessar o nosso projeto e não outros projetos?
● Por padrão, é gerado o context name com o mesmo nome do projeto; no nosso caso,
agenda-java. Podemos mudar isso na hora de criar o projeto ou posteriormente indo em
Project > Properties > Web Project Settings e mudando a opção Context Root. Repare
que não é necessário que o nome do contexto seja o mesmo nome do projeto.
Novo projeto

● Assim, para acessar o projeto, usaremos a URL: http://localhost:8080/agenda-java/


● Mas o que será que vai aparecer quando abrirmos essa URL? Será que veremos todo o
conteúdo do projeto? Por exemplo, será possível acessar a pasta src que está dentro do
nosso projeto? Tomara que não, afinal todo nosso código fonte está lá.
● Para solucionar isso, uma outra configuração é importante no Eclipse: o Content
Directory. Ao invés de abrir acesso a tudo, criamos uma pasta dentro do projeto e
dizemos que ela é a raiz (root) do conteúdo a ser exibido no navegador. No Eclipse, por
padrão, é criada a pasta WebContent, mas poderia ser qualquer outra pasta configurada
na criação do projeto (outro nome comum de se usar é web).
Novo projeto

● Tudo que colocarmos na pasta WebContent será acessível na URL do projeto. Por
exemplo, se queremos uma página de boas vindas:
● http://localhost:8080/agenda-java/bemvindo.html
● então criamos o arquivo:
● agenda-java/WebContent/bemvindo.html
WEB-INF

● Repare também que dentro da WebContent há uma pasta chamada WEB-INF. Essa pasta
é extremamente importante para qualquer projeto web Java EE. Ela contém configurações
e recursos necessários para nosso projeto rodar no servidor.
● O web.xml é o arquivo onde ficará armazenada as configurações relativas a sua
aplicação, usaremos esse arquivo em breve.
WEB-INF


WEB-INF

● É o básico gerado pela própria IDE. Tudo o que ele faz é definir o nome da aplicação e a
lista de arquivos acessados que vão ser procurados por padrão. Todas essas
configurações são opcionais.
● Repare ainda que há uma pasta chamada lib dentro da WEB-INF. Quase todos os projetos
Web existentes precisam usar bibliotecas externas, como por exemplo o driver do MySQL
no nosso caso. Copiaremos todas elas para essa pasta lib. Como esse diretório só aceita
bibliotecas, apenas colocamos nele arquivos .jar ou arquivos zip com classes dentro. Caso
um arquivo com outra extensão seja colocado no lib, ele será ignorado.
WEB-INF/Lib

● O diretório lib dentro do WEB-INF pode conter todas as bibliotecas necessárias para a
aplicação Web, evitando assim que o classpath da máquina que roda a aplicação precise
ser alterado.
● Além do mais, cada aplicação Web poderá usar suas próprias bibliotecas com suas
versões específicas! Você vai encontrar projetos open source que somente fornecem
suporte e respondem perguntas aqueles usuários que utilizam tal diretório para suas
bibliotecas, portanto evite ao máximo o uso do classpath global.
WEB-INF/classes

● Há ainda um último diretório, oculto, o WEB-INF/classes. Para rodarmos nossa aplicação


no servidor, precisamos ter acesso as classes compiladas (não necessariamente ao
código fonte). Por isso, nossos .class são colocados nessa pasta dentro do projeto. Esse
padrão é definido pela especificação de Servlets do Java EE. Repare que a IDE compila
nossas classes na pasta build e depois automaticamente as copia para o
WEB-INF/classes.
● A pasta WEB-INF é muito importante e contém recursos vitais para o funcionamento do
projeto. Imagine se o usuário tiver acesso a essa pasta! Códigos compilados (facilmente
descompiláveis), bibliotecas potencialmente sigilosas, arquivos de configuração internos
contendo senhas, etc.
WEB-INF/classes

● Para que isso não aconteça, a pasta WEB-INF com esse nome especial é uma pasta
invisível ao usuário final. Isso quer dizer que se alguém acessar a URL
http://localhost:8080/fj21-agenda/WEB-INF verá apenas uma página de erro (404).

Criando páginas e HTML básico

● Para criarmos as nossas páginas, precisamos utilizar uma linguagem que consiga ser
interpretada pelos navegadores. Essa linguagem é a HTML (Hypertext Markup Language).
● Como o próprio nome diz, ela é uma linguagem de marcação, o que significa que ela é
composta por tags que definem o comportamento da página que se está criando. Essas
tags dizem como a página será visualizada, através da definição dos componentes visuais
que aparecerão na tela. É possível exibir tabelas, parágrafos, blocos de texto, imagens e
assim por diante.
Criando páginas e HTML básico

● Todo arquivo HTML deve conter a extensão .html, e seu conteúdo deve estar dentro da tag
<html>. Em um HTML bem formado, todas as tags que são abertas também são fechadas,
dessa forma, todo o seu código num arquivo .html ficará dentro de <html> e </html>. Além
disso, podemos também definir alguns dados de cabeçalhos para nossa página, como por
exemplo, o título que será colocado na janela do navegador, através das tags <head> e
<title>:

Criando páginas e HTML básico

● Para escrevermos algo que seja exibido dentro do navegador, no corpo da nossa página,
basta colocarmos a tag <body> dentro de <html>, como a seguir:

Algumas tags HTML

Você também pode gostar