You are on page 1of 11

UNIVERSIDADE CATÓLICA DE PELOTAS – UCPEL TECNOLOGIA EM PROCESSAMENTO DE DADOS 3º SEMESTRE PROF.

GUILHERME

EJB Enterprise JavaBeans

CRISSIELE OLIVEIRA, EDILENE SOUZA THIAGO CARDOSO PELOTAS, 30 DE JUNHO DE 2006.

...................................................................................................................................4 Conceitos importantes............................................11 ......................................................................................................................Componentes........................................................................................ 8 Papéis EJB................................................................................................5 EJB entidade (Entity Beans)................................. 5 Compontentes EJB.....4 Elementos de um sistema EJB...................................................................................................................................................3 Objetivos....................................................................................................................................................................................................................5 Containers EJB.......4 ....4 ......2 INTRODUÇÃO................................................................... 5 EJB de sessão (Session Beans)....................................................10 BIBLIOGRAFIA............................................6 Suporte para transações.................................................................... 9 CONCLUSÃO...................... 4 Objetos distribuídos : ............................................................................................................................................................................................................................................................................... 8 Descritores de Implantação (Deployment Descriptor) .............................................Objetos locais aos clientes..........................................................................................................................................................4 ............................Containers..........SUMÁRIO SUMÁRIO.............................................................................................................................................................................................

IBM. ou JCP. Os principais objetivos da tecnologia EJB são fornecer rápido e simplificado desenvolvimento de aplicações Java baseadas em componentes. é um processo formalizado que permite que as partes interessadas se envolvam nas definições de versões futuras e funcionalidades da plataforma Java. 1 Java Community Process. Atualmente. seguras e portáveis. são chamados “Servidores de Alicação”. . distribuídas.0 e seu futuro é definido conjuntamente entre grandes empresas como Sun. Através do EJB o desenvolvedor utiliza a infraestrutura do servidor de aplicação voltada para o desenvolvimento de aplicações de missao crítica (de alta importância para a empresa) e de aplicações empresarias em geral. Oracle e HP como também por uma enorme comunidade de desenvolvedores numa rede mundial de colaboração sob o portal do JCP1. transacionais. Hoje ele encontra-se na versão 3.INTRODUÇÃO EJB ou Enterprise JavaBeans é um dos principais componentes da plataforma J2EE (Java 2 Enterprise Edition). É um componente do tipo servidor que roda no container para EJB do servidor de aplicação. A plataforma J2EE provê algumas facilidades dedicadas a camada de lógica de negócio e para o acesso ao banco de dados.

Possibilidade dos servidores atuais serem atualizados de modo a suportar EJB.Objetos locais aos clientes . Ser independente de plataforma.Containers . possibilitando que o programador abstraia dos detalhes de baixo nível. Possibilitar o acesso a partir de clientes Java via RMI2 e a partir de outros clientes via CORBA3. Facilitar o desenvolvimento de aplicações. .Componentes Conceitos importantes 2 RMI (Remote Method Invocation) é uma forma prática de se implementar um Sistema Distribuído em plataforma Java.Objetivos • • • • • Ser a arquitetura de componentes padrão para o desenvolvimento de aplicações distribuídas orientadas a objetos na linguagem Java. 3 CORBA é a arquitetura padrão criada pelo Object Management Group (OMG) para estabelecer e simplificar a troca de dados entre sistemas distribuídos heterogêneos. e vem da sigla para Common Object Request Broker Architeture. Elementos de um sistema EJB .

. Cada objeto servidor é envolvido por um skeleton que escuta solicitações dos stubs. a lógica do negócio na segunda e o banco de dados na terceira. EJB de sessão (Session Beans) • • • • Representa uma sessão de um único cliente. As tecnologias CORBA. Java RMI e Microsoft DCOM usam os seus protocolos para chamadas a métodos remotos. Os tipos de componentes podem ser: persistentes ou transientes.Objetos distribuídos : Objetos distribuídos são a base tecnológica dos sistemas atuais baseados em três camadas. Ambientes de execução. sendo que os EJBs de sessão são transientes e os EJBs entidade são persistentes. Facilitam o desenvolvimento dos componentes. Implementam lógicas dos negócios. Um protocolo para a chamada de métodos remotos é usado para a comunicação. A um tipo de servidor há um skeleton e um stub associado. Os stubs residem nas máquinas onde se encontram os clientes e se comunicam com os objetos servidores através dos skeletons. Containers EJB • • • • • Interagem com os EJBs segundo um conjunto definido de interfaces. sendo que. Os stubs e os skeletons escondem o uso do protocolo de chamadas a métodos remotos. Compontentes EJB • • Executam em containers. mas não representa os dados. Provêem serviços para os componentes. Múltiplas instâncias tipicamente existem em um container. a lógica de apresentação fica na primeira camada. Protocolos para objetos distribuídos procuram fazer com que os objetos remotos pareçam ser locais. Removido quando ocorre queda do container cliente tem de restabelecer um novo objeto sessão para continuar o trabalho. A tecnologia de objetos distribuídos é baseada em objetos servidores. skeletons e stubs. Pode atualizar dados em bancos de dados. Vida relativamente curta.

. Representa dados armazenados de forma persistente. O identificador de um EJB de sessão o diferencia de outros EJBs do mesmo tipo. Tem uma referência persistente para o objeto. Uma falha do servidor é transparente ao cliente.• Úteis para descrever e gerenciar interações entre os componentes entidades e implementar um fluxo de trabalho. Identificadores • • • Todo EJB tem um identificador único. Gerenciada pelo componente. EJB entidade (Entity Beans) • • • • • • • Participa em transações. dura tanto quanto os dados em um banco de dados.não mantém o estado entre as chamadas dos métodos. Tipos: Sem estado . sua chave primária e sua interface remota sobrevivem a eventual quedas do container. Possibilita acesso compartilhado por múltiplos usuários. O identificador de um EJB entidade identifica a informação. Uma instância de um bean entidade. Tipos de Persistência:   Gerenciada pelo container. ou seja. Possui “vida longa”.dedicado a um cliente pelo tempo de vida da instância mantém estado conversacional: pode guardar dados relativos ao cliente entre chamadas de métodos. Com estado .

conexões a BD (Banco de dados). nomes.Interfaces implementadas por um EJB Home Interface    Define os métodos de ciclo de vida do componente: criação. Serviços: transações. Visão do cliente • • Componente Session: objeto não persistente em execução em um servidor. Expõe todas as interfaces relacionadas à aplicação. processos. Representa a visão que o cliente terá do componente. . segurança e persistência. Fornece um ou mais containers para os componentes nele implantados. ou de entidades persistentes implementadas por aplicação corporativa já existente. remoção e busca Através dessa interface. memória. Componente Entity: objeto que fornece uma visão OO de entidades armazenadas num BD. Servidores de Aplicação EJB • • • Servidor de aplicação genérico que fornece um ambiente compatível com a especificação da arquitetura EJB. Classe do Componente  implementa os métodos funcionais (aspectos funcionais do componente). Responsável pelo gerenciamento e coordenação da alocação de recursos:   Threads. clientes vêem componentes EJB como uma coleção homogênea de instâncias. Remote interface    Define os métodos funcionais do componente.

ela é independente de plataforma.• • • Container: gera ou fornece as classes que implementam as interfaces Home e Remote. A JNDI ou Java Naming and Directory Interface é uma API para acesso a serviços de diretórios. Ela permite que aplicações cliente descubram e obtenham dados ou objetos através de um nome. Suporte para transações Um dos aspectos chave dos EJBs é o suporte para transações distribuídas. etc. • Implantador  geração das classes e interfaces adicionais que habilitam o container a gerenciar componentes EJB. . Um Object Transaction Monitor ( OTM ) responsabilizase por gerenciar as transações. Dados podem estar distribuídos entre múltiplos servidores. gera arquivo ejb-jar contendo 1 ou mais componentes. • Fornecedor de Servidor EJB / Container EJB    ferramentas de implantação. • Montador da Aplicação  gera arquivo ejb-jar com os componentes e suas instruções de montagem. acesso a BD. suporte de tempo de execução para as instâncias dos componentes. Aplicações podem atualizar dados de forma atômica. • 4 Administrador do Sistema. Através da Home o cliente obtém uma referência para interface Remote. Assim como todas as APIs Java. API padrão para acesso aos serviços de transação. Cliente utiliza JNDI4 para localizar e obter uma referência para interface Home. Papéis EJB • Fornecedor de Componentes EJB    definição das interfaces home e remote. descritor de implantação.

5 XML (eXtensible Markup Language) é uma recomendação da W3C para gerar linguagens de marcação para necessidades especiais. Até EJB 1. Arquivo XML com descritor da implantação. Especificado através de um arquivo XML5.1 em diante  • No momento da implantação da aplicação utiliza-se um arquivo jar contendo:   Código dos componentes necessários.0  Era um objeto Java seriado gravado em disco. .Descritores de Implantação (Deployment Descriptor) • • Contém informações sobre o ambiente no qual o componente deve ser executado. • De EJB 1.

fluxo da aplicação e lógicas de negócio. Mesmo os EJBs já existirem a alguns anos. que muito freqüentemente é um computador diferente daquele que hospeda o servidor Web. Ele também oferece serviços para transações.e não apenas aplicações Web . um servidor EJB faz muito mais do que guardar os componentes de negócio. Porém. .CONCLUSÃO Com os EJBs damos outro passo na direção da separação de apresentação.compartilhem as lógicas de negócio. Desta vez a lógica de negócio é colocada em componentes que rodam em um servidor EJB. uma outra razão é a interpretação diferente de desenvolvedores de ferramentas das especificações dos EJB. eles ainda são considerados uma tecnologia nova. segurança. Fazendo isto permitimos que outras aplicação . Uma das razões é que ferramentas de desenvolvimento de alta qualidade não foram disponibilizadas até recentemente. Mas a principal razão é provavelmente que a forma com que uma grande companhia constrói aplicações empresariais não muda tão facilmente. Essas são todas as características necessárias para o que chamamos de "aplicações empresariais". gerenciamento de estado e persistência.

j2eebrasil.com.com wikipedia.sun.br java.BIBLIOGRAFIA www.br www.ufes.org .inf.