Académique Documents
Professionnel Documents
Culture Documents
o em Software Livre
Assuntos
Arquitetura JEE Enterprise JavaBeans (EJB)
Modelo de componentes Principais Caractersticas Tipos de EJB Persistncia Gerenciamento de Transaes Manipulao de Exceo Segurana JNDI Protocolos
Arquitetura JEE
A plataforma Java
plataforma Java SE acrescentada das funcionalidades necessrias para o desenvolvimento e execuo de aplicaes em um ambiente corporativo.
Continer
Todo componente de software Java EE deve estar dentro de um continer apropriado. Tipos de Continer Web JSP Servlets EJB EJBs
Servidor de Aplicao
JavaEE somente a especificao. Um Servidor de Aplicao um software que tem a funo de disponibilizar os contineres e os servios de infra-estrutura da arquitetura JEE. H no mercado vrias implemetaes de servidores que seguem a especificao JEE.
As diferenas esto nas opes de licenciamento (comercial ou software-livre) e nas definies de configurao de implantao e componentes adicionais de administrao das tecnologias. Ex: Jboss, Gernimo, GlassFish, Jonas...
RedHat: JBoss Application Server Oracle: GlassFish, Apache: Apache Geronimo Jonas
Oracle/BEA, WebLogic Application Server IBM, IBM Websphere Application Server Oracle Application Server SAP, SAP Application Server Resin
10
11
12
13
14
Para o container:
So objetos gerenciados Acesso Remoto Atendem a vrias requisies de mltiplos clientes
Desenvolvimento de Aplicaes Multicamadas Prof. Cludio Martins
15
Modelo de Componentes
Um servidor EJB fornece um modelo
de componentes que simplifica o processo de construo da lgica de negcio em componentes no servidor, e como os clientes acessam os servios desses componentes por meio de suas interfaces. servios automticos para gerenciar os componentes, como prover acesso a fontes de dados (persistncia), monitor de transaes, controle de segurana concorrencia, tolerncia a falhas, etc.
Desenvolvimento de Aplicaes Multicamadas Prof. Cludio Martins
16
autocontida de software que pode ser composta numa aplicao em tempo de design (sem compilao). localizados nas seguintes camadas:
desktops/janelas, console ou Applets
Componentes na Camada Web: pginas web, Servlets e
17
18
Persistncia de objetos
Entity beans (containers de EJB) usando JPA
Segurana Nomeao e servios de diretrio (JNDI) Utilizao de protocolos (Corba, RMI, etc)
Desenvolvimento de Aplicaes Multicamadas Prof. Cludio Martins
19
Entity Bean
Representam dados persistentes gravados num banco de
Message-Driven Bean
Permite que um componente de aplicao (o message bean)
20
Persistncia
Responsvel pelo mapeamento de dados em banco
realizado por mtodos e objetos de persistncia em Java (sem utilizar comandos SQL).
JEE utiliza a especificao JPA Java Persistence API H diversas implementaes de JPA:
Hibernate, TopLink, OpenJPA, etc.
21
22
Gerenciamento de Transaes
Transao um conjunto de procedimentos que
executado em um banco de dados, que para o usurio visto apenas como uma nica ao.
Transaes em EJB ocorrem de duas formas:
CMT (Container Managed Transactions)
Transaes Gerenciadas pelo Container)
23
simplifica o desenvolvimento por no exigir o controle programtico das fronteiras da transao. que o mtodo (de persistncia) quando executado s pode ser associado a uma nica transao.
A anotao adotada :
@TransactionManagement(TransactionManagementType.
CONTAINER)
24
ype.BEAN)
25
Manipulao de Exceo
Erros e excees (inesperados) ocorrem e devem
desenhados um dos melhores meios para aumentar a robustez do seu cdigo. simples (EJB 3.0 lana 16 excees).
Desenvolvimento de Aplicaes Multicamadas Prof. Cludio Martins
26
@ApplicationException para indicar a poltica de rollback para exceo a ser lanada por erro de lgica do negcio em contraposio aos erros do sistema.
Antes da EJB 3, isto era papel das checked
27
exceptions.
28
29
Segurana
Suporte para realizar autenticao e autorizao de maneira
transparente.
Autenticao e Autorizao.
O processo de autenticao consiste na identificao dos
usurios atravs de algum tipo de certificado (usurio e senha). J o processo de autorizao determina o que cada usurio autenticado pode acessar dentro da aplicao.
Na plataforma Java, esses dois processos so padronizados
30
JNDI
EJB usa o Java Naming and Directory Interface
recursos
31
Protocolos
EJB define o protocolo Java RMI (JRMP) como o
32
Referncias bibliogrficas
BILL BURKE; RICHARD MONSON. Enterprise Javabeans 3.0 - 5
http://docs.oracle.com/javaee/5/tutorial/doc/
http://pt.wikipedia.org/wiki/Enterprise_JavaBeans Site oficial do JEE:
http://www.oracle.com/technetwork/java/javaee/overview/index.html
33
Exerccios
34
Atividades em laboratrio
1) Verifique quais os servidores JEE esto instalados em sua mquina. 2)Abra o Netbeans e verifique se os servidores JEE esto instalados/configurados corretamente (ver figura no prximo slide).
1)Adicione o servio caso ele no exista. 2)Para cada um dos servidores, teste-os um de cada vez, e realize as seguintes operaes:
(a)Inicie o servio do servidor e verifique se ele est com o servidor web no ar, abrindo a pgina: http://localhost:8080 (b) Inicie o console do adminstrador do servidor
- No GlassFish http://localhost:4848
35
36