DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da Java Magazine DIGITAL
ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!

Artigo Java Magazine 10 - Tira-dúvidas

Artigo publicado pela Java Magazine.

Esse artigo faz parte da revista Java Magazine edição 10. Clique aqui para ler todos os artigos desta edição

 

 

Atenção: por essa edição ser muito antiga não há arquivo PDF para download.Os artigos dessa edição estão disponíveis somente através do formato HTML. 

 

Tira-dúvidas

Pacotes EJB-JAR e EAR

 

Nesta edição completamos o tira-dúvidas sobre empacotamento de aplicações Java, analisando os pacotes de Enterprise JavaBeans (EJB-JAR) e os "superpacotes" EAR

A definição de formatos padrão para pacotes no J2EE é um dos grandes benefícios da plataforma, pois permite às empresas empacotarem componentes e aplicações que podem ser instalados em qualquer servidor compatível, sem a necessidade de programas de instalação especializados. Por outro lado, a correta construção desses pacotes é uma barreira a ser vencida pelo desenvolvedor iniciante.

A primeira parte desse tira-dúvidas (Edição 9) apresentou os pacotes JAR (bibliotecas), JARs executáveis (aplicações stand-alone) e WARs (aplicações web). Esta parte apresenta os pacotes EJB-JAR e EAR.

Recapitulando: exemplos, o comando jar e Ant

Na primeira parte, criamos as classes FormataTexto e FormataNumero (dentro do package javamagazine.util), que realizam tarefas de formatação freqüentemente utilizadas em aplicações comerciais. As classes foram empacotadas em um JAR de biblioteca chamado jmutil.jar, de modo a serem facilmente reutilizadas em vários projetos – lembrando que tanto as classes de formatação quanto as aplicações que fazem uso delas são propositalmente simples, para que seja possível o foco no processo de empacotamento e não no código Java.

O JAR de biblioteca e as várias aplicações cliente foram construídos utilizando uma estrutura padrão, na qual cada aplicação tem seu próprio diretório ou “raiz”. Cada projeto/aplicação possui um subdiretório src, contendo os fontes, e um diretório bin, contendo o resultado da compilação das classes Java. Arquivos adicionais (páginas HTML, documentação, scripts SQL, descritores J2EE) são inseridos em subdiretórios separados, preservando a organização do projeto. Assim pode-se facilmente compilar e empacotar as aplicações por meio dos comandos javac e jar, ou então utilizar um buildfile Ant padronizado, localizado na raiz do projeto. A Figura 1 apresenta a estrutura dos projetos vistos até aqui; consulte a primeira parte para mais detalhes referentes a essa estrutura, e sobre as bibliotecas, a sintaxe do comando jar e o uso do Ant.

Enterprise JavaBean JARs

Um EJB-JAR é um pacote JAR que contém a definição de um ou mais EJBs. A única diferença em relação a um JAR comum é a presença do arquivo META-INF/ejb-jar.xml, que contém o descritor J2EE para os Enterprise Beans. Além disso, na maioria dos casos, haverá outros arquivos XML no diretório META-INF empacotado (descritores proprietários para cada servidor de aplicações suportado pelos EJBs), mas é possível escrever aplicações simples sem recorrer a esses arquivos.

Como exemplo, será utilizado um Session Bean Stateful, que em uma aplicação real seria uma "fachada" para um ou mais Entity Beans responsáveis pela persistência das informações da agenda em um banco de dados. Para manter a simplicidade do exemplo, será construído apenas o Session Bean – que deve ser Stateful para que os dados do objeto Contato sendo editado não sejam perdidos entre uma chamada e outra aos métodos remotos. Além disso, o Session Bean utiliza as classes utilitárias para garantir a formatação correta das informações fornecidas pelos usuários, antes do seu armazenamento como atributos.

A estrutura do novo projeto pode ser vista na Figura 2 (observe que o pacote jmutil.jar, criado na primeira parte, foi copiado para dentro do projeto).

Uma aplicação baseada em EJBs tem, no mínimo, dois componentes, rodando possivelmente em nós diferentes da rede: o EJB em si (ContatoEJB), hospedado por um servidor de aplicações, e uma aplicação cliente que utiliza os serviços fornecidos por ele (ContatoClient). Assim, temos necessidade de gerar dois pacotes: um EJB-JAR, para entregar ao servidor de aplicações; e um JAR simples (não-executável) para o cliente, que nesse exemplo é apenas uma adaptação da aplicação Swing vista na primeira parte.

"

A exibição deste artigo foi interrompida.

  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da Java Magazine DIGITAL
ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!


Fernando Lozano
é consultor independente, ativista do software livre e professor da Faculdade Metodista Bennett, além de autor do livro “Java em GNU/Linux” (Editora Alta Books). É detentor de certificações da Sun, IBM, Microsoft e Red Hat, sendo uma espécie de “agente duplo” nas várias tribos.
O que você achou deste post?

    0 COMENTÁRIO

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.


Nenhum comentário foi postado - seja o primeiro a comentar!
Cursos relacionados
Publicidade
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]


Este post está fechado. Saiba mais sobre a assinatura MVP!
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2013 - Todos os Direitos Reservados a web-03