Fundamentos da Plataforma Java EE. Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br)



Documentos relacionados
ENTERPRISE JAVABEANS 3. Msc. Daniele Carvalho Oliveira

Web Technologies. Tópicos da apresentação

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

Universidade da Beira Interior

Spring: Um suite de novas opções para Java EE

UFG - Instituto de Informática

Aula 5: J2EE Application Assembly Model

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

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

UNIDADE IV ENTERPRISE JAVABEANS

J2EE TM Java 2 Plataform, Enterprise Edition

J550 Integração com Bancos de Dados

Java II. Sérgio Luiz Ruivace Cerqueira

Enterprise Java Beans

UFG - Instituto de Informática

J2EE. J2EE - Surgimento

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

4 Um Exemplo de Implementação

DESENVOLVIMENTO COM JAVA EE E SUAS ESPECIFICAÇÕES

Adriano Reine Bueno Rafael Barros Silva

Prof. Fellipe Araújo Aleixo

Programação e Configuração de Aplicações JEE. Edilmar Alves

Manual de Instalação PIMSConnector em Windows

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas

Enterprise Java Bean. Enterprise JavaBeans

SISTEMA DE AGENDAMENTO E GERENCIAMENTO DE CONSULTAS CLÍNICAS

Framework. Marcos Paulo de Souza Brito João Paulo Raittes

Prática em Laboratório N.01 Criando um Serviço Web via Console

HIBERNATE EM APLICAÇÃO JAVA WEB

Banco de Dados de Músicas. Andre Lima Rocha Campos Osório Pereira Carvalho

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

Experiência em missão crítica de missão crítica

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

DESENVOLVIMENTO WEB UTILIZANDO FRAMEWORK PRIMEFACES E OUTRAS TECNOLOGIAS ATUAIS

Prova Específica Cargo Desenvolvimento

gerenciamento de portais e websites corporativos interface simples e amigável, ágil e funcional não dependendo mais de um profissional especializado

CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011

Desenvolvimento Web TCC Turma A-1

Java Enterprise Edition. by Antonio Rodrigues Carvalho Neto

Manual de Instalação PIMSConnector em Linux

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

Prática Sobre Servlets e JSP

ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE

TUTORIAL SPRING SECURITY PROGRAMAÇÃO COM FRAMEWORKS Responsáveis: Ana Luíza Cruvinel, Maikon Franczak e Wendel Borges

UFG - Instituto de Informática


J550 Segurança e Controle de erros

Java para Desenvolvimento Web

CURSO DESENVOLVEDOR JAVA Edição 2010

Java II. Sérgio Luiz Ruivace Cerqueira

Introdução ao kit J2EE SDK (Sun)

Java para WEB. Servlets

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA

Web Services. (Introdução)

Aula 4. Objetivos. Conteúdo dinâmico na internet.

Java. Marcio de Carvalho Victorino

Google App Engine. André Gustavo Duarte de Almeida. Computação Ubíqua e Nuvens. Natal, 24 de maio de 2012 andregustavoo@gmail.com

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

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio

CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias

MANUAL DE UTILIZAÇÃO. Instalação do MV Portaria

Orientada a serviços: JAX-WS SOAP API

Parte I. Demoiselle Mail

UNIVERSIDADE FEDERAL DA BAHIA INSTITUTO DE MATEMÁTICA CIÊNCIA DA COMPUTAÇÃO LINGUAGENS PARA APLICAÇÃO COMERCIAL. Java Peristence API 1.

Resumo: Perguntas a fazer ao elaborar um projeto arquitetural

PROJETO PEDAGÓGICO DE CURSOS

Arquitetura de uma Webapp

Noções de. Microsoft SQL Server. Microsoft SQL Server

Boletim Técnico. : 05/08/2013 Data da revisão : 16/10/13 Banco(s) de Dados

Manual de Instalação Versão 1.0

JSP: JAVA SERVER PAGES

Oracle WebLogic Server 11g: Conceitos Básicos de Administração

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

UNIVERSIDADE. Sistemas Distribuídos

Curso de Java. Orientação a objetos e a Linguagem JAVA. TodososdireitosreservadosKlais

Material de Apoio Configuração Auditoria Pós

R/3 e SAP WAS. 8/28/2003 José Alves Marques. R/3 e SAP WAS(2)

SCE-557. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello

Introdução ao Active Directory AD

Unidade 8: Padrão MVC e DAO Prof. Daniel Caetano

Sistemas Distribuídos

CURSO DESENVOLVEDOR JAVA Edição 2009

Escola Superior de Tecnologia de Setúbal. Projecto Final

Programação Web Aula 12 - Java Web Software

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

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

Java e Banco de Dados: JDBC, Hibernate e JPA

Arquitetura de Banco de Dados

Aula 1 Acesso a Banco de Dados

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

SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl

3 SCS: Sistema de Componentes de Software

Itens estruturais/caso de uso. Itens estruturais/classe ativa. Itens estruturais/componente. Itens estruturais/artefatos. Itens comportamentais

Persistência de dados com JPA. Hélder Antero Amaral Nunes

Programação para Web Artefato 01. AT5 Conceitos da Internet

JPA: Persistência padronizada em Java

Tecnologias Web. Java Enterprise Edition

Java 2 Enterprise Edition

Transcrição:

Fundamentos da Plataforma Java EE Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br)

Como a plataforma Java EE trata o SERVIÇO DE NOMES

Serviço de Nomes Num sistema distribuído os componentes necessitam acessar outros componentes, bem como os recursos Na JEE o serviço de nomes é o Java Naming and Directory Interface (JNDI) Cada componente e/ou recurso é associado a um nome único Exemplo: java:comp/defaultdatasource

Recursos São objetos que proporcionam conexão aos serviços oferecidos pela plataforma Exemplos: Serviço de armazenamento persistente Serviço de mensagens assíncronas Um administrador é responsável por criar os recursos e associa- los a um namespace

Injeção de Dependência Os recursos podem ser injetados em um componente da aplicação através de anotação @Resource Outra opção é especificar o que deve ser injetado através dos descritores de implantação

Armazenamento Persistente Para o armazenamento persistente das informações do sistema geralmente uwlizamos um banco de dados relacional Acesso através da API JDBC através de um objeto DataSource Um objeto DataSource pode ser imaginado como uma fábrica de conexões para um banco de dados Método getconnec@on()

Recurso JDBC Um objeto DataSource pode ser registrado com um nome JNDI Tal objeto implementa um pool de conexões Aplicações que usam a API de persistência Java JPA especificam um DataSource em um arquivo denominado de persistence.xml <jta- data- source>jdbc/myorderdb</jta- data- source>

Criação de Recursos Antes de implantar e executar aplicações corporawvas, os recursos necessários precisam ser criados Através de uwlitários disponibilizados pelos servidores de aplicação específicos

Como a plataforma Java EE trata a INJEÇÃO DE REFERÊNCIAS

Injeção A plataforma Java EE provê dois mecanismos Injeção de recurso Injeção de dependência Tais mecanismos permitem que componentes obtenham a referência a um recurso ou outro componente sem ter que instanciar

Injeção As referências necessárias são declaradas (geralmente interfaces) e anotadas A anotação define um ponto de injeção Em tempo de execução, o contêiner providencia a instanciação e atribuição dos elementos desejados

Injeção de Recurso Permite a injeção de qualquer recurso disponível no namespace JNDI Exemplo: public class MyServlet extends H_pServlet { @Resource(name="java:comp/DefaultDataSource") private javax.sql.datasource dsc;... }

Injeção de Recurso De forma semelhante, pode ser anotado um método modificador da referência desejada public class MyServlet extends H_pServlet { private javax.sql.datasource dsc;... @Resource(name="java:comp/DefaultDataSource") public void setdsc(java.sql.datasource ds) { dsc = ds; } }

Injeção de Dependência Permite que um componente da aplicação tenha acesso a outro componente distribuído No componente dependente ocorre a declaração do elemento do qual depende O contêiner providencia a instanciação e a injeção das referências às mesmas nos pontos de injeção A injeção ocorrem em tempo de execução

Injeção de Dependência A injeção de dependência do Java EE leva em consideração o escopo desejado @javax.enterprise.context.requestscoped public class CurrencyConverter {... } O ponto de injeção é marcado por @Inject public class MyServlet extends H_pServlet { @Inject CurrencyConverter cc;... }

Diferença entre os Tipos de Injeção Mecanismo de Injeção Injeção de Recurso Injeção de dependência Pode injetar recursos JNDI diretamente Sim Pode injetar classes regulares diretamente Não Resolvido por Nome do recurso Typesafe Não Não Sim Tipo Sim

Como a plataforma Java EE propõe o EMPACOTAMENTO DE APLICAÇÕES

Empacotamento de Aplicações Uma aplicação corporawva pode ser empacotada em Um arquivo Java JAR Um arquivo Web WAR Um arquivo Enterprise EAR Vários módulos Java EE podem ser empacotados em tais arquivos

Estrutura de um Pacote EAR Um pacote EAR contém: módulos Java EE descritores de implantação instruções através de anotações

Módulos Java EE Tipos de módulos Java EE Módulo EJB Contém classes Java ou EJBs (JAR) Módulo Web Contém componentes Web (JSP, Servlets, etc.) (WAR) Módulo de aplicação cliente Contém classes Java (JAR) Módulo de adaptador de recurso Contém interfaces, classes e bibliotecas nawvas (RAR)

Empacotando EJBs em um EJB JAR Um EJB JAR é portável e pode ser uwlizado em várias aplicações Uma aplicação Java EE pode conter um ou mais módulos EJB (dentro do EAR correspondente)

Empacotando EJBs em um WAR Essa opção simplifica o empacotamento da aplicação correspondente Quando a aplicação é exclusivamente Web Deve estar no diretório WEB- INF/classes

Empacotando um Módulo Web Contem os componentes Web e os arquivos de conteúdo Web estáwco (imagens, etc.) Como subdiretórios de WEB- INF (padrão) classes classes Java em geral, Servlets, EJBs, etc. lib arquivos JAR necessários Além de descritores de implantação como o web.xml e o ejb- jar.xml

Estrutura de um WAR

Empacotando Adaptadores de Recursos Armazenado em um arquivo RAR Contendo: arquivos XML, classes Java, e outros elementos relawvos a aplicação JCA (Java EE Connector Architecture) Pode fazer parte de um EAR