Buscar

Livro Digital - Programação para Web II 4

Prévia do material em texto

INTRODUÇÃO AO JAVA ENTERPRISE
EDITION
UNIDADE 1
CCOONNSSTTRRUUÇÇÃÃOO DDOO AAMMBBIIEENNTTEE DDEE
DDEESSEENNVVOOLLVVIIMMEENNTTOO EE DDEEPPLLOOYYMMEENNTT
TTÓÓPPIICCOO 22
11 IINNTTRROODDUUÇÇÃÃOO
11..11 IINNSSTTAALLAAÇÇÃÃOO DDOO SSEERRVVIIDDOORR DDEE AAPPLLIICCAAÇÇÃÃOO –– WWIILLDDFFLLYY
Conforme vimos nos tópicos anteriores, para podermos desenvolver, implantar e
testar aplicações que utilizem as tecnologias que fazem parte da especi�cação JEE,
precisamos de um servidor de aplicação – application server (AS).
Utilizaremos, neste caderno, o WildFly Application Server, conhecido anteriomente
como JBoss. A Red Hat, empresa que desenvolve o AS, justi�ca a mudança dizendo
que o nome WildFly representa melhor o software na atualidade, pois lembra
leveza, agilidade e liberdade. A �gura a seguir mostra o website do projeto.
Unidade 1 - Tópico 2 
Livro Digital - Programação para Web II https://livrodigital.uniasselvi.com.br/ADS27_programacao_para_web_ii...
1 of 30 26/06/2024, 16:24
FONTE: O autor
Caso a aba não esteja aparecendo para você, é possível adicioná-la através da
seleção do menu WWiinnddooww -->> SShhooww VViieeww -->> OOtthheerr. Você deve digitar a palavra
server, de modo que esta opção �que acessível para seleção, conforme a �gura a
seguir.
FIGURA 5 - SELEÇÃO DA ABA SERVERS NO ECLIPSE
FONTE: O autor
Unidade 1 - Tópico 2 
Livro Digital - Programação para Web II https://livrodigital.uniasselvi.com.br/ADS27_programacao_para_web_ii...
3 of 30 26/06/2024, 16:24
FONTE: O autor
Ao concluir a instalação e reinicialização da IDE, na aba Servers, clique com o botão
direito do mouse e selecione a opção NNeeww -->> SSeerrvveerr. No momento em que este
caderno foi escrito, somente tínhamos a versão 8 do WildFly para instalar. Caso a
versão 9 ou posteriores aparecem para você, selecione a última versão que for
compatível com a o JEE 7. Esta informação está disponível no website do WildFly.
Você deverá criar um novo runtime para o servidor, através das telas mostradas
nas �guras 8 e 9. Você deve deixar a con�guração exatamente como mostrado nas
�guras, com exceção do Execution Environment, que deverá respeitar a versão do
Java utilizada por você na IDE, e do caminho de instalação do servidor, ambas na
Figura 9.
FIGURA 8 - INSTALAÇÃO DO WILDFLY
Unidade 1 - Tópico 2 
Livro Digital - Programação para Web II https://livrodigital.uniasselvi.com.br/ADS27_programacao_para_web_ii...
5 of 30 26/06/2024, 16:24
FONTE: O autor
Quando a inicialização do servidor encerrar, você deverá ver uma mensagem
semelhante à destacada na Figura 10, indicando que o processo foi bem-sucedido.
As mensagens acima da mensagem destacada e inclusive a versão e codinome do
servidor podem variar, de acordo com o que foi selecionado e instalado nas etapas
anteriores.
FIGURA 10 - INICIALIZAÇÃO DO WILDFLY
FONTE: O autor
Por �m, para testarmos se a instalação foi bem-sucedida, devemos digitar a
seguinte URL no navegador: <http://localhost:8080>. O navegador deverá mostrar
Unidade 1 - Tópico 2 
Livro Digital - Programação para Web II https://livrodigital.uniasselvi.com.br/ADS27_programacao_para_web_ii...
7 of 30 26/06/2024, 16:24
para diversos sistemas operacionais e em diversos idiomas. Você deve selecionar a
opção destacada.
FIGURA 12 - DOWNLOAD DO NETBEANS
FONTE: O autor
Essa versão possui diversas ferramentas embutidas, o que praticamente elimina a
necessidade de con�guração, além de dois servidores, o GlassFish e o Tomcat. Em
nossa disciplina precisaremos do GlassFish, visto que o Tomcat não é um
Application Server, mas sim um servlet container.
Uma vez feito o download, podemos proceder com a instalação do NetBeans. O
instalador da ferramenta é bem simples e, embora demore um pouco para
concluir todo o processo, exige pouca interação por parte do usuário. Na Figura 13
podemos perceber uma janela informando quais softwares serão instalados em
seu computador.
FIGURA 13 - TELA DO INSTALADOR
Unidade 1 - Tópico 2 
Livro Digital - Programação para Web II https://livrodigital.uniasselvi.com.br/ADS27_programacao_para_web_ii...
9 of 30 26/06/2024, 16:24
FIGURA 14 - CONFIGURAÇÃO DO INSTALADOR
FONTE: O autor
FIGURA 15 - CONTRATO DE LICENÇA
Unidade 1 - Tópico 2 
Livro Digital - Programação para Web II https://livrodigital.uniasselvi.com.br/ADS27_programacao_para_web_ii...
11 of 30 26/06/2024, 16:24
recentemente do JPA, permite a conexão com os principais players do mercado.
Para facilitar o aprendizado e reduzir a con�guração, trabalharemos com o banco
de dados MySQL, que já foi utilizado por você em disciplinas anteriores.
33 IINNTTEEGGRRAAÇÇÃÃOO WWIILLDDFFLLYY--MMYYSSQQLL
Conforme  K19 (2013), aplicações Java se comunicam com banco de dados através
de conexões JDBC. Para estabelecer uma conexão JDBC, algumas informações
como usuário, senha e base de dados são necessárias. As con�gurações relativas
às conexões JDBC podem ser de�nidas nas aplicações ou nos servidores de
aplicação. Em um servidor de aplicação, as con�gurações JDBC são de�nidas em
componentes chamados Data Sources. Os Data Sources permitem que uma única
con�guração JDBC seja utilizada por diversas aplicações. Eles também permitem
que outros tipos de con�gurações sejam compartilhadas, como por exemplo, a
con�guração de um Connection Pool. Além disso, através de Data Sources
podemos utilizar facilmente o serviço de transações dos servidores de aplicação.
Esse serviço é de�nido pela especi�cação Java Transaction API (JTA), que será
abordada na Unidade 3 deste Caderno de Estudos.
Inicialmente devemos fazer o download do driver jdbc para o MySQL, disponível
em <ddeevv..mmyyssqqll..ccoomm//ddoowwnnllooaaddss//ccoonnnneeccttoorr//jj//>, conforme a Figura 17. É
recomendável fazer o download do driver independente de plataforma, visto que
ele funciona em qualquer sistema operacional.
Uma vez que o download foi concluído, passamos para a integração do driver com
o WildFly. Lembramos que a função do driver JDBC é estabelecer a comunicação
entre o Sistema Gerenciador de Banco de Dados Relacional (SGBDR) e a
plataforma Java, neste caso, representado pelo servidor de aplicações.
FIGURA 17 - DRIVER JDBC
Unidade 1 - Tópico 2 
Livro Digital - Programação para Web II https://livrodigital.uniasselvi.com.br/ADS27_programacao_para_web_ii...
13 of 30 26/06/2024, 16:24
http://dev.mysql.com/downloads/connector/j/
http://dev.mysql.com/downloads/connector/j/
linha 4. Este arquivo representará a instalação de um módulo adicional no WildFly.
Ao encerrar, veri�que o código fonte escrito com cuidado, salve e feche o arquivo.
FIGURA 19 - ARQUIVO MODULE.XML
FONTE: O autor
A próxima (e última) etapa consiste na con�guração do arquivo standalone.xml,
disponível no caminho /standalone/con�guration, no diretório de instalação do
WildFly. Dentro deste arquivo, encontre a tag <datasources> e insira a
con�guração de um novo datasource e um novo driver, conforme mostrado na
Figura 20. Caso já existam con�gurações para outros datasources e drivers, você
não precisa excluí-los, uma vez que eles em geral servem como exemplo e o
WildFly pode trabalhar com múltiplos datasources.
Na Figura 20 podemos ainda perceber o nome de nosso datasource (java:/
MYSQL_DS), representado pelo número 1 e também o nome do módulo que
instalamos no arquivo module.xml, representado pelo número 2. Outros aspectos
importantes a serem destacados são o usuário e senha dentro da tag <security> e 
a url de conexão, dentro da tag <connection-url>. Estes valores deverão re�etir a
condição de seu SGBD. No caso deste exemplo, o usuário e senha do banco de
dados são “root” e o nome da base de dados é JEE7. Faça as alterações de acordo
com as con�gurações do MySQL instalado em seu computador. Ao encerrar,
veri�que o código fonte escrito com cuidado, salve e feche o arquivo.
FIGURA 20 - CRIAÇÃO DO DATASOURCE
Unidade 1 - Tópico 2 
Livro Digital - Programação para Web II https://livrodigital.uniasselvi.com.br/ADS27_programacao_para_web_ii...15 of 30 26/06/2024, 16:24
Neste tópico, demonstraremos de que forma fazer a integração entre o MySQL e o
Servidor de aplicações Glass�sh através do NetBeans.
Em nossos exemplos, o Netbeans está con�gurado para o idioma inglês, ao
invés do português que é instalado automaticamente. Caso deseja trocar o
idioma, o procedimento é demonstrado em: <ffrraammeewwoorrkkssyysstteemm..ccoomm//bblloogg//
aalltteerraannddoo--aa--lliinngguuaaggeemm--nnoo--nneettbbeeaannss//>.
Inicialmente, acesse a aba Services, demonstrada na Figura 22. Nesta aba, clique
com o botão direito no mouse na opção Databases, selecionando New Connection.
Selecionando esta opção, aparecerá uma janela que permitirá selecionar a qual
banco de dados nos conectaremos. Selecione a opção MySQL e o próprio
Netbeans sugerirá um driver, conforme a Figura 23.
FIGURA 22 - INTEGRAÇÃO GLASSFISH-MYSQL
FONTE: O autor
Unidade 1 - Tópico 2 
Livro Digital - Programação para Web II https://livrodigital.uniasselvi.com.br/ADS27_programacao_para_web_ii...
17 of 30 26/06/2024, 16:24
http://www.frameworksystem.com/blog/alterando-a-linguagem-no-netbeans/
http://www.frameworksystem.com/blog/alterando-a-linguagem-no-netbeans/
http://www.frameworksystem.com/blog/alterando-a-linguagem-no-netbeans/
http://www.frameworksystem.com/blog/alterando-a-linguagem-no-netbeans/
FONTE: O autor
Existem algumas con�gurações adicionais, mas com o objetivo de simpli�car o
processo de con�guração, podemos pressionar o botão Finish e aguardar o
resultado demonstrado na Figura 25. O número 1 mostra a nova conexão com o
banco MySQL através de sua adição às databases. O número 2 indica os Schemas
ou databases disponíveis no banco de dados com o qual nos conectamos. Em seu
computador, o número dois trará Schemas diferentes dos  mostrados na Figura.
Em nosso exemplo, a conexão foi renomeada para MYSQL_DS, selecionando a
mesma com o botão direito e clicando na opção renomear. Este passo é opcional e
não interferirá diretamente com o resto do procedimento. O importante é você
conseguir encontrar a conexão que criou dentro do Netbeans.
Seguindo este procedimento, você con�gurou uma nova conexão com o banco de
dados MySQL diretamente através do Netbeans. Para fazer a con�guração do
datasource e do pool de conexões, devemos acessar a interface de administrador
do Glass�sh, disponível na url <http://localhost:4848>, sem esquecer de antes
inicializar o servidor dentro do Netbeans.
FIGURA 25 - CONEXÃO COM O MYSQL
Unidade 1 - Tópico 2 
Livro Digital - Programação para Web II https://livrodigital.uniasselvi.com.br/ADS27_programacao_para_web_ii...
19 of 30 26/06/2024, 16:24
FONTE: O autor
FIGURA 27 - INTERFACE DE ADMINISTRAÇÃO DO GLASSFISH
FONTE: O autor
Unidade 1 - Tópico 2 
Livro Digital - Programação para Web II https://livrodigital.uniasselvi.com.br/ADS27_programacao_para_web_ii...
21 of 30 26/06/2024, 16:24
user
<usuário do seu banco de dados
MySQL>
ServerName localhost
DatabaseName jee7
Password
<senha do seu banco de dados
MySQL>
Url jdbc:mysql://localhost:3306/jee7
URL jdbc:mysql://localhost:3306/jee7
FFFOOONNNTTTEEE::: OOO aaauuutttooorrr
    
Para concluir o processo, clique em Finish e aguarde a criação do novo pool de
conexões. Ao �nal, o Glass�sh exibirá todos os pools de conexão disponíveis, entre
os quais deverá estar o que você acabou de criar (Figura 29).
FIGURA 29 - LISTAGEM DOS POOLS DE CONEXÃO
Unidade 1 - Tópico 2 
Livro Digital - Programação para Web II https://livrodigital.uniasselvi.com.br/ADS27_programacao_para_web_ii...
23 of 30 26/06/2024, 16:24
FIGURA 31 - CONFIGURAÇÃO DO DATASOURCE
FONTE: O autor
JNDI é o acrônimo de Java Naming and Directory Interface, cujo objetivo é
permitir a busca de objetos de forma distribuída simplesmente através de
um nome. Com essa tecnologia, o cliente abstrai totalmente os detalhes
referentes à implementação do recurso que está sendo buscado.  Maiores
detalhes sobre o JNDI podem ser obtidos em: <ddooccss..oorraaccllee..ccoomm//jjaavvaassee//ttuuttoo
rriiaall//jjnnddii//oovveerrvviieeww//>.
Assim encerramos o processo de criação dos DataSources nos servidores de
aplicação e IDEs que você poderá utilizar ao longo da disciplina. Agora estamos
prontos para efetivamente pôr a “mão na massa” e começar a fazer os exercícios e
criar nossas próprias aplicações utilizando JEE 7 e os servidores de aplicação
WildFly e Glass�sh. Caso você queira utilizar o Glass�sh com o Eclipse ou o WildFly
com o Netbeans, basta con�gurá-los da forma como demonstramos ao longo
deste tópico.
Unidade 1 - Tópico 2 
Livro Digital - Programação para Web II https://livrodigital.uniasselvi.com.br/ADS27_programacao_para_web_ii...
25 of 30 26/06/2024, 16:24
http://docs.oracle.com/javase/tutorial/jndi/overview/
http://docs.oracle.com/javase/tutorial/jndi/overview/
http://docs.oracle.com/javase/tutorial/jndi/overview/
http://docs.oracle.com/javase/tutorial/jndi/overview/
Responder
Responder
2  Con�gure mais um datasource para cada servidor de aplicação,
preferencialmente utilizando um banco de dados diferente do MySQL:
3  Encontre e descreva pelo menos mais três implementações de Servidores de
Aplicação compatíveis com a especi�cação JEE 7. Estes servidores de aplicação
podem ser tanto proprietários como open source.
Unidade 1 - Tópico 2 
Livro Digital - Programação para Web II https://livrodigital.uniasselvi.com.br/ADS27_programacao_para_web_ii...
27 of 30 26/06/2024, 16:24
A) 
B) 
C) 
D) 
Responder
I, II e IV
II e III
I, II e III
II, III e IV
5  Existem várias tecnologias que fazem parte da especi�cação JEE, porém para
implementar e testar aplicações web JEE, é necessário um servidor de aplicação.
Referente especi�cações JEE e servidores de aplicação, analise as a�rmativas a
seguir:
   
I - O WildFly Application Server, conhecido anteriomente como JBoss.
II - Na IDE Eclipse, servidores de aplicação são disponibilizados na guia “Servers”.
III - Caso as con�gurações do WildFly estejam originais, a aplicação é acessível no
navegador de internet pela URL “http://localhost:8080”.
IV- A IDE NetBeans não possui o servidor de aplicação GlassFish embutido.
    
Agora assinale a alternativa que apresenta as sentenças CORRETAS:
Unidade 1 - Tópico 2 
Livro Digital - Programação para Web II https://livrodigital.uniasselvi.com.br/ADS27_programacao_para_web_ii...
29 of 30 26/06/2024, 16:24

Mais conteúdos dessa disciplina