Como criar um EJB. Criando um projeto EJB com um cliente WEB no Eclipse



Documentos relacionados
Enterprise Java Beans

Java para Desenvolvimento Web

Tutorial: Criando aplicações J2EE com Eclipse e jboss-ide

ENTERPRISE JAVABEANS 3. Msc. Daniele Carvalho Oliveira

PadrãoIX. Módulo II JAVA. Marcio de Carvalho Victorino. Servlets A,L,F,M

Programação II Programação para a Web. Christopher Burrows

UNIDADE IV ENTERPRISE JAVABEANS

Java Laboratório Aula 1. Divisões da Plataforma. Introdução a Plataforma Java. Visão geral da arquitetura da

Java para WEB. Servlets

Configurar o Furbot no Eclipse

Tutorial RMI (Remote Method Invocation) por Alabê Duarte

Programação Na Web. Servlets: Como usar as Servlets. Agenda. Template genérico para criar Servlets Servlet 2.4 API

Prática em Laboratório N.02 Criando um serviço Web via NetBeans

Tutorial Jogo da Velha WEB

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) Sumário. Java 2 Enterprise Edition. J2EE (Java 2 Enterprise Edition)

Prática da Disciplina de Sistemas Distribuídos Serviços Web IFMA DAI Professor Mauro Lopes C. Silva

Java Server Pages. Arquitectura de uma aplicação distribuída em Internet. Figura 1 Modelo 2

Arquitetura de Aplicações JSP/Web. Padrão Arquitetural MVC

Tutorial. Começando a Criar Aplicativos SMS

TDC2012. EJB simples e descomplicado, na prática. Slide 1

Fundamentos da Plataforma Java EE. Prof. Fellipe Aleixo

Programação Web Aula 12 - Java Web Software

Arquiteturas de Aplicações Web. Leonardo Gresta Paulino Murta

Java na WEB Servlet. Sumário

Autenticação e Autorização

Java II. Sérgio Luiz Ruivace Cerqueira

Stateful Session Beans

Executando comandos do Sistema Operacional em uma aplicação WEB Java

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas)

Prova Específica Cargo Desenvolvimento

UTILIZAÇÃO DA TECNOLOGIA ENTERPRISE JAVABEANS NO DESENVOLVIMENTO DE APLICAÇÕES DISTRÍBUIDAS

Prof. Roberto Desenvolvimento Web Avançado

!" # # # $ %!" " & ' ( 2

Curso de Java. Geração de Páginas WEB. TodososdireitosreservadosKlais

Passos para a configuração do ambiente de desenvolvimento:

Aula 03 - Projeto Java Web

ANDROID APPLICATION PROJECT

Arquitetura JEE Introdução à Camada de Negócios: Enterprise Java Beans (EJB) Marcos Kalinowski

J2EE. J2EE - Surgimento

NetBeans. Conhecendo um pouco da IDE

Desenvolvimento Web TCC Turma A-1

Desenvolvimento Web TCC Turma A-1

Aprenda como instalar o plugin EclipseUML no Eclipse e como utilizá-lo para fazer engenharia reversa de seu código-fonte.

Enterprise Java Bean. Enterprise JavaBeans

EJB. Session Beans. J2EE (C. Geyer) Introdução a SessionBean 1

Procedimentos para Configuração do Ambiente J2EE e J2SE em Ambiente Windows

Associação Carioca de Ensino Superior Centro Universitário Carioca

Criação de um novo projeto no Eclipse utilizando Maven

1 Criar uma entity a partir de uma web application que usa a Framework JavaServer Faces (JSF)

Java 2 Enterprise Edition Session Beans

Organizando Classes em Pacotes. Profa. Thienne Johnson EACH/USP

Criação de Servlets Name Directory Build WAR JSP/Servlet frameworks Launch URL Package Class name Generate header comments

UFG - Instituto de Informática

Desenvolvendo Portlets utilizando JSF, Ajax, Richfaces. Gustavo Lira Consultor 4Linux

J2EE TM Java 2 Plataform, Enterprise Edition

Laboratório EJB e J2EE Uma aplicação completa

Demoiselle Tutorial Módulo 1 Arquitetura

EJB ainda tem vez no Java EE 6? Fernando Lozano Consultor 4Linux

Introdução. Servlet. Ciclo Vida. Servlet. Exemplos. Prof. Enzo Seraphim

FACULDADE DE TECNOLOGIA SENAC GOIÁS PROGRAMAÇÃO PARA INTERNET TUTORIAL DE APLICAÇÃO JSF DESENVOLVIDO COM A FERRAMENTA ECLIPSE LUNA

Descompacte o arquivo site zip que foi baixado dentro da pasta do eclipse.

Java 2 Enterprise Edition Uma aplicação J2EE completa

Criando uma agenda simples com NetBeans 6.5

TUTORIAL SISTEMA DE CONTROLE DE ACESSO

INTRODUÇÃO À TECNOLOGIA SERVLETS

Para desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans.

Criação de uma aplicação usando Servlets

Sistemas Distribuídos e Tolerância a Falhas Mestrado em Engenharia Informática 1ª ano / 2ª semestre

Desenvolvimento para Android Prá9ca 2. Prof. Markus Endler

Web Browser como o processo cliente. Servidor web com páginas estáticas Vs. Aplicações dinâmicas para a Web:

Aplicativos JavaEE 6 modularizados com Web Fragments

Criando & Consumindo um WebService com ASP.NET 2.0 Publicado em: 25 de Agosto de 2007 Por Herman Ferdinando Arais

Java EE 6. A revolução do. Um overview sobre as novidades da JSR 316. a r t i g o

Prof. Fellipe Araújo Aleixo

Introdução ao Android. Programação Orientada a Objetos Prof. Rone Ilídio - UFSJ

O Primeiro Programa em Visual Studio.net

Introdução a Servlets e JSP. Prof. Samuel Martins samuellunamartins at gmail dot com Faculdade São Miguel

Criar um novo projeto

Aplicação da Arquitetura Multicamadas Utilizando Java. Raquel Schlickmann Orientador: Marcel Hugo

Tutorial Eclipse (IDE)

Introdução ao Android. SECAP 2014 Prof. Rone Ilídio - UFSJ

Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP

Integrando Eclipse e Websphere Application Server Community Edition

MAC-0462 Padrões arquiteturais para sistemas baseados em componentes reconfiguráveis

Aplicações Distribuídas Cliente/ Servidor Corporativas

Persistência de Classes em Tabelas de Banco de Dados

Curso: Superior Tecnólogo em Análise e Desenvolvimento de Sistemas Disciplina: Sistemas Distribuídos Professor: Társio Ribeiro Cavalcante

Criar uma aplicação JPA2 com EclipseLink e H2

Figura 1. A Classe Java

Enterprise Java Beans (III)

Tencologia em Análise e Desenvolvimento de Sistemas Disciplina: WEB I Conteúdo: WEB Container Aula 04

Universidade da Beira Interior

Tutorial Módulo 06 - Segurança

Criando e Entendendo o Primeiro Servlet Por: Raphaela Galhardo Fernandes

J550 Integração com Bancos de Dados

WebWork 2. João Carlos Pinheiro.

( TIAGO DOS SANTOS MENDES ) PROGRAMAÇÃO DISPOSITIVOS MOVEIS ANDROID STUDIO

LIBERAÇÃO DA PASTA ARQUIVOS DE PROGRAMA

Transcrição:

Como criar um EJB Criando um projeto EJB com um cliente WEB no Eclipse Gabriel Novais Amorim Abril/2014 Este tutorial apresenta o passo a passo para se criar um projeto EJB no Eclipse com um cliente web que acessa as funcionalidades do EJB. Foi utilizado o Eclipse Kepler e JBoss AS 7.1.

Sumário 1. Introdução... 2 1.1 Quando usar Enterprise Beans?... 2 1.2 Tipos de Enterprise Beans... 2 2. Criando um projeto EJB no Eclipse... 3 3. Criando um EJB... 4 4. Criando métodos no EJB... 6 5. Criando uma aplicação cliente para o EJB... 7 6. Conclusão... 7 1

1. Introdução Enterprise Beans são componentes Java EE que implementam a tecnologia Enterprise JavaBeans (EJB). Estes componentes rodam em um container EJB, dentro de um servidor de aplicação, que fornece serviços de transação e segurança de forma transparente para o desenvolvedor. Enterprise Beans rodam do lado servidor encapsulando a lógica do negócio da aplicação e trazem inúmeros benefícios. Primeiro, fornece serviços de nível de sistema, como gerenciamento de transações e segurança. Segundo, implementam a lógica do negócio e, em times onde há divisão de camadas, favorece o foco do desenvolvedor em alguma camada específica. Terceiro, são componentes portáveis e pode-se criar novas aplicações a partir de beans existentes. 1.1 Quando usar Enterprise Beans? O uso de EJBs deve ser considerado quando: A aplicação deve ser escalável. EJBs podem rodar em máquinas diferentes de forma transparente aos clientes, tornando a aplicação naturalmente distribuída. Transações são utilizadas para garantir a integridade dos dados. Enterprise Beans suportam transações, que é o mecanismo que gerencia o acesso concorrente a objetos compartilhados. A aplicação terá uma variedade de clientes. Com poucas linhas de código, clientes remotos podem facilmente localizar Enterprise Beans. 1.2 Tipos de Enterprise Beans Há dois tipos de Enterprise Beans: Session: Executa tarefas para um cliente, opcionalmente podem implementar um web service. Message-Drive: Atua como um listener para um tipo particular de mensagens, como JMS. Nas versões anteriores da especificação EJB 3, as versões EJB 2.x e EJB 1, havia um terceiro tipo de Enterprise Bean, o Entity Bean. Eles foram substituídos pelas entities da JPA. 2

2. Criando um projeto EJB no Eclipse No Eclipse, clique em File > New > EJB Project, como mostra a figura 1. Figura 1 New EJB Project no Eclipse Será aberta uma janela de configuração de projeto como a apresentada na figura 2. Escolha um nome para o projeto no campo Project name e marque a opção Add project to an EAR. A opção de adicionar o projeto a um EAR criará um arquivo EAR que conterá o projeto EJB recém-criado, desta forma, o deploy será do arquivo EAR com o JAR que contém os EJBs. Clique em Finish para concluir a configuração e criar o projeto. Note na aba Project Explorer que foram criados três projetos, MyEJBProject, MyEJBProjectClient e MyEJBProjectEAR. Segue descrição de cada um dos projetos: MyEJBProject: projeto contendo todas as classes de implementação dos EJBs. É compilado como um arquivo JAR. MyEJBProjectClient: projeto contendo as interfaces dos EJBs. É compilado como um arquivo JAR. MyEJBProjectEAR: projeto EAR contendo os projetos da aplicação, neste caso, MyEJBProject.jar e MyEJBProjectClient.jar. 3

Figura 2 Configuração de um novo projeto EJB 3. Criando um EJB Clique com o botão direito sobre o projeto EBJ, MyEJBProject no caso, em seguida New > Session Bean (EJB 3.x), como mostra a figura 3. Será aberta uma janela de configuração para o EJB a ser criado, conforme figura 4. Informe o pacote do EJB e o nome da classe. Por default, o tipo do EJB é Stateless sem interface (Nointerface view). Mantenha o EJB Stateless, mas altere a criação da interface (Create business interface) marcando a opção Local e desmarcando a opção No-interface View. Clique em Finish para criar o EJB e sua interface Local. 4

Figura 3 Criação de um EJB no Eclipse Figura 4 Configuração do EJB no Eclipse 5

Atente-se para o local onde os artefatos são criados. O EJB é criado no MyEJBProject (HelloBean.java) e a interface local (HelloBeanLocal.java) no MyEJBProjectClient. Note também que o EAR MyEJBProjectEAR contém o módulo MyEJBProject.jar e a biblioteca MyEJBProjectClient.jar, desta forma, pode-se fazer o deploy do EAR e utilizar as interfaces em MyEJBProjectClient para obter instâncias dos EJBs em MyEJBProject. 4. Criando métodos no EJB Crie métodos na interface do EJB para que sejam acessados pelos clientes. A listagem de código 1 define um método na interface HelloBeanLocal. package com.gabrielamorim.myejb; import javax.ejb.local; @Local public interface HelloBeanLocal { public String gethellomessage(); Listagem de Código 1 Definição de método na interface local Este método deve ser implementado no EJB. A listagem de código 2 mostra o EJB com a implementação do método String gethellomessage(). package com.gabrielamorim.myejb; import javax.ejb.stateless; @Stateless public class HelloBean implements HelloBeanLocal { /** * Default constructor. */ public HelloBean() { @Override public String gethellomessage() { return "Hello!"; Listagem de Código 2 Implementação do EJB HelloBean Após estes passos, tem-se um EJB pronto para ser usado! A próxima sessão mostra como usar o EJB HelloBean injetando-o em uma aplicação Web (em um Servlet) por meio da anotação @EJB. 6

5. Criando uma aplicação cliente para o EJB Crie um Dynamic Web Project no Eclipse, durante a criação, marque a opção Add project to an EAR e selecione o arquivo EAR onde já estão o projeto EJB e as interfaces. Isto fará o projeto Web ser adicionado ao mesmo EAR do EJB, desta forma será necessário apenas um deploy. Crie um Servlet na aplicação Web. A listagem de código 3 mostra a implementação de um Servlet que injeta o EJB HelloBean por meio da sua interface local HelloBeanLocal. package com.gabrielamorim.myservlets; import com.gabrielamorim.myejb.hellobeanlocal; @WebServlet("/ServletToEJB") public class ServletToEJB extends HttpServlet { private static final long serialversionuid = 1L; @EJB private HelloBeanLocal hellobean; public ServletToEJB() { super(); protected void doget(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter out = response.getwriter(); out.println(hellobean.gethellomessage()); Listagem de Código 3 Servlet injetando o EJB por meio da interface local Atente-se para a anotação @EJB sob o atributo hellobean do tipo HelloBeanLocal. Esta anotação injeta uma instância do EJB HelloBean em hellobean. Basta fazer o deploy do EAR em um container Web e EJB e acessar o ServletToEJB para ver a mensagem do EJB. 6. Conclusão Foi criado um projeto EJB com um EJB Stateless sendo exposto por uma interface local aos seus clientes. O projeto EJB foi adicionado a um EAR, junto com o a biblioteca contendo a interface local do EJB. Foi criado também um projeto Web para utilizar o EJB criado por meio de um Servlet que teve o EJB injetado por meio da anotação @EJB. O projeto Web também foi adicionado ao EAR, resultando assim em um único deploy. Este passo a passo teve o intuito de mostrar a criação e a utilização de um EJB de forma simples e objetiva, tendo como público alvo pessoas que já estudaram a teoria e que ficaram confusos na hora de implementar um EJB na prática. 7