Combinando AngularJS com Java EE. Rodrigo Cândido da
|
|
- Pedro Salvado da Fonseca
- 8 Há anos
- Visualizações:
Transcrição
1 Combinando AngularJS com Java EE Rodrigo Cândido da
2 About Me Software Architect JUG Leader do GUJavaSC Contatos
3 Agenda Arquitetura Rich Client RESTful Web Services Java EE 7 JAX-RS WebSocket JSON-P AngularJS Demo
4 Client-side vs. Server-side Server-side Tudo é processado no servidor Mais stateful Fraca escalabilidade Client-side Complexo e dinâmico Mais stateless Maior escalabilidade
5 Ascenção do Javascript O debate cliente leve' vs cliente pesado' é antigo Frameworks web server-side mandaram por um tempo (Struts, Spring, MVC, JSF) Ajax foi uma mudança suave para o client-side (GWT, Vaadin) Rich clients estão voltando voltaram, graças ao JavaScript/HTML5 Motores Javascript melhoraram muito Melhores ferramentas desenvolvimento Melhores padrões (CSS3, HTML5, Websocket)
6 Arquitetura Rich Client
7 Arquitetura Rich Client Similar a arquiteturas cliente/servidor Client responsável pela UI, input, validação, lógica e estado Server responsável pela lógica de negócio, modelo de domínio, persistência Web/HTTP é a cola que conecta client e server Protocolos de comunicação comuns REST na maioria dos casos WebSocket quando precisa de comunicação full-duplex Ferramentas Javascript suportam REST muito bem, mas ainda não WebSocket O formato comum (talvez ideal?) de troca de dados é JSON
8 Arquitetura REST
9 Arquitetura REST Características: Protocolo cliente/servidor sem estado (HTTP) Operações bem definidas (GET, POST, PUT) Sintaxe universal para identificação de recursos (URL) Transferência de informações em formato padrão (XML, HTML, JSON) Web Services que seguem a arquitetura REST são denominados RESTful
10 RESTful Web Services
11 HATEOAS Hypermedia As The Engine of Application State Clientes somente precisam saber a URI root da aplicação e os media types utilizados Descrevem o estado atual da aplicação e como navegar para o próximo estado
12 Java EE é uma ótima plataforma server-side para esta arquitetura
13 Java EE History J2EE 1.3 CMP, Connector Architecture J2EE 1.4 Web Services Mgmt, Deployment, Async Connector Java EE 5 Ease of Development, EJB 3, JPA, JSF, JAXB, JAX-WS, StAX, SAAJ Java EE 6 Pruning, Extensibility Ease of Dev, CDI, JAX-RS Web$Profile$ $ Servlet 3, EJB 3.1 Lite! Java EE 7! JMS 2, Batch, TX, Concurrency, Interceptor, WebSocket, JSON! JAX-RPC, CMP/ BMP, JSR 88 Web$Profile$ $ JAX-RS 2!
14 Java EE 7
15 Java EE + JavaScript JavaScript/HTML5 JAX-RS Java API for WebSocket Java API for JSON JAXB EJB 3 Servlet CDI Bean Validation JPA JMS JTA JCA
16 JAX-RS Suporte a RESTful em Java API padronizada Programação declarativa Abstrações para implementação no server e client Serviços implementados via POJO Configuração @Consumes, etc Plugável e extensível Providers, filters, interceptors, validators Suporte a processamento assíncrono Integrado com as tecnologias do Java EE
17 @ApplicationPath Define a URI para ser utilizada pelo endpoint Determina acesso ao serviço via HTTP GET Determina acesso ao serviço via HTTP POST Determina acesso ao serviço via HTTP PUT Determina acesso ao serviço via HTTP DELETE Determina acesso ao serviço via HTTP HEAD Define o mapeamento do valor informado na URI para um determinado parâmetro de método Define o mapeamento do valor informado na query string para um determinado parâmetro de método Define um determinado MIME type para recebimento de dados pelo serviço Define um determinado MIME type para envio de dados pelo serviço Define um determinado componente para auxiliar no JAX- RS runtime. Determina o root path de uma aplicação JAX-RS
18 Manipulação de Parâmetros Além há outras cinco anotações que permitem extrair informação de um Extraem dados de um query string Extrai dados de um formulário Extrai dados de cookies (pares Extrai dados de cabeçalhos Extrai dados de segmentos de URL
19 Validação de Dados Os dados enviados para métodos em classes de resource podem ser validados através da API Bean Validation, que é configurada @Consumes(MediaType.APPLICATION_FORM_URLENCODED) public int ano) private String imdbcode;
20 Conversão de Dados ParamConverterProvider pode ser utilizado para gerenciar a conversão de objetos customizados Object para String e vice-versa Por exemplo, pode ser utilizado para produzir um objeto java.util.date a partir de uma String public class MyBeanConverterProvider implements ParamConverterProvider public <T> ParamConverter<T> getconverter( Class<T> clazz, Type type, Annotation[] annotations) { if (clazz.getname().equals(mybean.class.getname())) { return new ParamConverter<T>() public T fromstring(string value) public String tostring(t bean) {... ; return null;
21 Tratamento de Exceções Geração e lançamento da exceção public Item getitem(@pathparam("itemid") String itemid) { Item i = getitems().get(itemid); if (i == null) { throw new CustomNotFoundException("Item, " + itemid + ", is not found"); return i; Exemplo de definição de exceção customizada public class CustomNotFoundException extends WebApplicationException { public CustomNotFoundException() { super(responses.notfound().build());
22 Filtros e Interceptadores
23 Filtros Filtros podem ser server side e/ou client side ContainerRequestFilter, ContainerResponseFilter ClientRequestFilter, ClientResponseFilter public class AuthorizationRequestFilter implements ContainerRequestFilter public void filter(containerrequestcontext requestcontext) throws IOException { final SecurityContext securitycontext = requestcontext.getsecuritycontext(); if (securitycontext == null!securitycontext.isuserinrole("privileged")) { requestcontext.abortwith(response.status( Response.Status.UNAUTHORIZED).entity("User cannot access the resource.").build());
24 Interceptadores Existem dois tipos de interceptors (Reader e Writer) annotation is the name Compress public class @Compress public String getverylongstring() public class GZIPWriterInterceptor implements WriterInterceptor public void aroundwriteto(writerinterceptorcontext context) throws IOException, WebApplicationException {...
25 pode ser utilizado para injetar diversos objetos contextuais disponíveis em uma requisição ou resposta HTTP Objetos da Servlet API ServletConfig ServletContext HttpServletRequest HttpServletResponse Objetos da JAX-RS API Application UriInfo Request HttpHeaders SecurityContext Request UriInfo public HttpHeaders headers) { String m = request.getmethod(); URI ap = uriinfo.getabsolutepath(); Map<String, Cookie> c public login(@context SecurityContext sc) { String userid = sc.getuserprincipal().getname(); if (sc.isuserinrole("admin")) {...
26 Hypermedia Support JAX-RS oferece um modelo para suportar HATEOAS por meio de suporte à hypermedia Em cada mensagem de resposta, deve ser incluído os links para a próxima mensagem Utilizando este suporte, a aplicação consegue definir todo o modelo de navegação "application/xml") public Response create(article article) { Article created = articledao.create(article); return Response.ok(created).link("link-URI", "link-rel").links(producelinks(created)).build(); private Link[] producelinks(article article) {...
27 Integração com CDI JAX-RS integra-se muito bem com as tecnologias da plataforma Java Enterprise, especialmente com os componentes EJBs e CDI. CDI beans podem ser injetados diretamente nos resources. Providers e Application terão comportamento public class CdiBeanResource MyOtherCdiBean bean; // CDI public String getit() { return bean.getit();
28 Integração com EJB Exemplo de integração com public interface public public class StatelessEjbResource implements LocalEjb public String getit() { return "Hi Stateless!";
29 Cache Control JAX-RS suporta configurações para controle de caching de responses HTTP por meio da public Response int id) { Article article = articledao.findbyid(id); CacheControl cachecontrol = new CacheControl(); cachecontrol.setmaxage(60); return Response.ok(article).cacheControl(cacheControl).build();
30 Chamadas Assíncronas Possibilita o processamento multithread no servidor, aumentando o seu throughput Libera a thread do servidor para executar outras indica que o método será executado de maneira assíncrona Possível configurar public class AsyncResource public void asyncget(@suspended final AsyncResponse asyncresponse) { new Thread(new Runnable() {...).start();
31 WebSocket Oferece comunicação bi-direcional (full-duplex) através de uma simples conexão TCP Inicia através de um hand-shake através do protocolo HTTP, mas as conversações utilizam o protocolo WebSockets. Suporte requisições assíncronas Perfeito para aplicações como chat e jogos Utiliza as tecnologias web existentes
32 WebSocket Connected! open open Client message error message message message Server close Disconnected
33 WebSocket Client Remote Endpoint Session Message Handler Client Remote Endpoint Internet Session Message Handler WebSocket Endpoint Client Remote Endpoint Session Message Handler
34 REST vs. WebSocket
35 Java API for WebSocket Programação declarativa com anotações Client and server-side @OnError, Session, Remote Plugável e extensível Encoders, decoders, sub-protocols Lifecycle callback handlers Permite empacotá-los em aplicações Java EE
36 Java API for WebSocket Define o endpoint do servidor WebSocket para conexão pelos /chat ) public class ChatServer public void onopen(session peer) public void onclose(session peer) public void message(string message, Session client) throws IOException public void error(session session, Throwable t) {...
37 Java API for WebSocket Exemplo de cliente em JavaScript var wsuri = "ws://" + document.location.hostname + ":" + document.location.port + document.location.pathname + "chat"; var websocket = new WebSocket(wsUri); websocket.onopen = function(evt) { onopen(evt) ; websocket.onmessage = function(evt) { onmessage(evt) ; websocket.onerror = function(evt) { onerror(evt) ;
38 JSON JavaScript Object Notation {id:123, cidade: Paris, voos:[ M344, J919 ] Pode ser codificado diretamente em String e processado com métodos como split(), substring(), indexof() dentre outros Java EE 7 disponibiliza um API para construir objetos JSON e para converter strings JSON em mapas É um par de APIs de baixo nível (não é mapeamento objeto- JSON) Existem várias implementações que fazem mapeamento (binding) objeto-json automático (não são parte do Java EE) MOXy, Jettison, Jersey, Jackson, etc.
39 Java API for JSON API para parser e geração de objetos JSON definida pelo Java EE Object Model API - javax.json Análogo a DOM: estrutura em árvore; I/O streaming via decorators JsonObject: representa um objeto JSON JsonArray: representa um array JSON Leitura e gravação usando JsonReader e JsonWriter JSON Streaming API - javax.json.stream Análogo a SAX: leitura sequencial (baixo nível) JsonParser: permite ler um stream JSON e capturar eventos JsonGenerator: métodos para criar uma estrutura JSON
40 Java API for JSON JSON Object Model API JsonArray value = Json.createArrayBuilder().add(Json.createObjectBuilder().add("type", "home").add("number", " ") ).add(json.createobjectbuilder().add("type", "fax").add("number", " ") ).build(); [ ] { "type": "home, "number": " ", { "type": "fax, "number": " "
41 Java API for JSON JSON Streaming { "firstname": "John", "lastname": "Smith", "age": 25, "phonenumber": [ { "type": "home", "number": " ", { "type": "fax", "number": " " ] Event event = parser.next(); event = parser.next(); event = parser.next(); String name = parser.getstring(); // START_OBJECT // KEY_NAME // VALUE_STRING // "John
42 JAXB JAXB beans permitem reutilizar o mesmo JavaBean para gerar representações JSON e XML no public class MyJaxbBean { public String name; public public MyJaxbBean getmybean() { return new MyJaxbBean("Agamemnon", 32); {"name":"agamemnon", "age":"32"
43 AngularJS é uma ótima alternativa para implementação Web rich client
44 AngularJS Framework JavaScript MVW* client-side para desenvolver aplicações web modernas e dinâmicas A primeira versão open-source foi liberada em 2010 e desde então ele é mantido pela Google e pela comunidade Aproximadamente 2 releases mensais, projeto altamente ativo O que faz o AngularJS ser especial?
45 AngularJS Google Trends
46 AngularJS Jobs Trends indeed.com dice.com
47 AngularJS Diferenciais Organização da bagunça no client-side Views, modules, controllers, services, providers, etc Reutilização de código e modularidade (DRY) Killer Features Two-way data binding Dependency Injection Controllers, Services Directives, Filters, Templates, etc Integração natural com REST, SOA, SOFEA Ótima testabilidade
48 AngularJS Two-way data binding
49 AngularJS Dependency Injection.controller('LoginController', function($scope, $rootscope, $location, $http, $cookiestore, LoginService) { $scope.login = function () { LoginService.authenticate($.param({username: $scope.username, password: $scope.password), function (user) { $rootscope.user = user; $http.defaults.headers.common[xauth] = user.token; $cookiestore.put('user', user); $location.path("/"); ); ; )
50 AngularJS Controllers var myapp = angular.module('myapp',[]); myapp.controller('greetingcontroller', ['$scope', function($scope) { $scope.greeting = "Hola!"; ]); <div ng-controller="greetingcontroller"> {{ greeting </div>
51 AngularJS Services var services = angular.module( "myapp.services", ["ngresource"]); services.factory("loginservice", function($resource) { return $resource(":action", {, { authenticate: { method: "POST", params: {"action": "authenticate", headers: { Content-Type": "application/json" ); );
52 JavaScript Tools
53 Demo Java EE + AngularJS
54 Conclusões Clientes Javascript/HTML5 estão conquistando desenvolvedores Comunicação entre cliente e servidor em JSON via REST ou WebSocket Java EE funciona muito bem como backend para clientes ricos em Javascript, especialmente JAX-RS, Java API para WebSockets, e JSON-P Enjoy it ;)
55 Perguntas?
56 Muito rodrigocandido.me
Java EE 7 In Action. Rodrigo Cândido da Silva @rcandidosilva http://about.me/rcandidosilva
Java EE 7 In Action Rodrigo Cândido da Silva @rcandidosilva http://about.me/rcandidosilva Agenda! GUJavaSC! Java EE 7! Plataforma Java EE! Web Socket API 1.0! Batch API 1.0! Concurrency Utilities! JSON
Leia maisNOME DA APRESENTAÇÃO
25 DE MAIO @MICROSOFT Novidades de Java EE 7 Ernest Duarte NOME DA APRESENTAÇÃO Nome (Nick no Fórum) About me! Nickname na Comunidade Ernest Duarte Profissão Instrutor em Ciências e Tecnologias Numéricas
Leia maisPadrãoIX. Módulo II JAVA. Marcio de Carvalho Victorino. Servlets A,L,F,M
JAVA Marcio de Carvalho Victorino 1 Servlets 2 1 Plataforma WEB Baseada em HTTP (RFC 2068): Protocolo simples de transferência de arquivos Sem estado (não mantém sessão aberta) Funcionamento (simplificado):
Leia maisConceitos de Ajax Exemplos de uso do Ajax no braço, muitos exemplos, muito código (HTML, CSS, JavaScript, PHP, XML, JSON)
Márcio Koch 1 Currículo Formado na FURB em Ciência da Computação Pós graduado em Tecnologias para o desenvolvimento de aplicações web Mestrando em Computação Gráfica na UDESC Arquiteto de software na Senior
Leia maisWOW Mobile Rui Miguel Miranda Ramos
WOW Mobile Rui Miguel Miranda Ramos Programa 1. Plataforma WOW 2. WOW Mobile 3. API do WOW 4. Clientes 5. Conclusões Plataforma WOW Plataforma WOW Issue tracking system Motor de workflow flexível Plataforma
Leia maisExperiência em missão crítica de missão crítica
2 / 17 Experiência em missão crítica de missão crítica Pioneira no ensino de Linux à distância Parceira de treinamento IBM Primeira com LPI no Brasil + de 30.000 alunos satisfeitos Reconhecimento internacional
Leia maisEvolução guiada por APIs. com REST para modernizar seu legado
Evolução guiada por APIs Option #2 híbrida Criando uma arquitetura com REST para modernizar seu legado Rodrigo Engenheiro de Software na CI&T. Atuou na criação da FIFA World Cup 2014 Happiness Flag da
Leia maisSistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) Sumário. Java 2 Enterprise Edition. J2EE (Java 2 Enterprise Edition)
Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) J2EE () Sumário Introdução J2EE () APIs J2EE Web Container: Servlets e JSP Padrão XML 2 J2EE é Uma especificação para servidores
Leia maisTDC2012. EJB simples e descomplicado, na prática. Slide 1
TDC2012 EJB simples e descomplicado, na prática Slide 1 Palestrantes Kleber Xavier Arquiteto Senior / Globalcode kleber@globalcode.com.br Vinicius Senger Arquiteto Senior / Globalcode vinicius@globalcode.com.br
Leia maisEJB ainda tem vez no Java EE 6? Fernando Lozano Consultor 4Linux lozano@4linux.com.br
EJB ainda tem vez no Java EE 6? Fernando Lozano Consultor 4Linux lozano@4linux.com.br Você Gosta do EJB? O EJB esteve por muito tempo na berlinda do mundo Java É pesado... É complicado... Código muito
Leia maisCapítulo 1 - Java EE 6 por alto - 1
Capítulo 1 - Java EE 6 por alto - 1 Um pouquinho de história - 2 Padrões - 4 Arquitetura - 4 Componentes - 5 Contentores - 6 Serviços - 7 Protocolos de rede - 9 Empacotamento - 9 Java Standard Edition
Leia maisCurso de Java. Geração de Páginas WEB. TodososdireitosreservadosKlais
Curso de Java Geração de Páginas WEB Aplicação WEB Numa aplicação WEB de conteúdo dinâmico As páginas são construídas a partir de dados da aplicação (mantidos num banco de dados). Usuários interagem com
Leia maisArquiteturas de Aplicações Web. Leonardo Gresta Paulino Murta leomurta@ic.uff.br
Arquiteturas de Aplicações Web Leonardo Gresta Paulino Murta leomurta@ic.uff.br Aplicações Convencionais vs. Web Aplicações convencionais Escritas usando uma linguagem de programação (ex.: Java) Sites de
Leia maisJ820. Testes de interface Web com. HttpUnit. argonavis.com.br. Helder da Rocha (helder@acm.org)
J820 Testes de interface Web com HttpUnit Helder da Rocha (helder@acm.org) O que é HttpUnit API Java para comunicação com servidores HTTP Permite que programas construam e enviem requisições, e depois
Leia maisProjecto Integrador. Introdução ao REST. Material de suporte às aulas de Proj. Integrador (Nuno Preguiça) Copyright DI FCT/ UNL / 1
Projecto Integrador Introdução ao REST Material de suporte às aulas de Proj. Integrador (Nuno Preguiça) Copyright DI FCT/ UNL / 1 Notas Imagens do livro: G. Alonso et. Al. Web Services: Concepts, Architectures
Leia maisJSF e PrimeFaces. Professor: Ricardo Luis dos Santos IFSUL Campus Sapucaia do Sul
JSF e PrimeFaces Professor: Ricardo Luis dos Santos IFSUL 2015 Agenda Introdução Desenvolvimento Web Java Server Faces Exercício 2 Introdução Ao longo dos anos diversas linguagens de programação foram
Leia maisJava II. Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com
Java II Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com Por quê JSP? Com Servlets é fácil Ler dados de um formulário Recuperar dados de uma requisição Gerar informação de resposta Fazer gerenciamento
Leia maisREST Um Estilo de Arquitetura de Sistemas Distribuídos
REST Um Estilo de Arquitetura de Sistemas Distribuídos Márcio Alves de Araújo¹, Mauro Antônio Correia Júnior¹ 1 Faculdade de Computação Universidade Federal de Uberlândia (UFU) Monte Carmelo MG Brasil
Leia maisProjecto Integrador. Introdução ao REST. Material de suporte às aulas de Proj. Integrador (Nuno Preguiça) Copyright DI FCT/ UNL / 1
Projecto Integrador Introdução ao REST Material de suporte às aulas de Proj. Integrador (Nuno Preguiça) Copyright DI FCT/ UNL / 1 Notas Imagens do livro: G. Alonso et. Al. Web Services: Concepts, Architectures
Leia maisSUMÁRIO REST. REST + OAuth. Cliente em Java Processamento de respostas JSON
SUMÁRIO REST Cliente em Java Processamento de respostas JSON REST + OAuth Material de suporte às aulas de Sistemas Distribuídos de Nuno Preguiça Copyright DI FCT/ UNL / 1 REST WEB SERVICES: CLIENTE Criar
Leia maisFramework. Marcos Paulo de Souza Brito João Paulo Raittes
Framework Marcos Paulo de Souza Brito João Paulo Raittes Sobre o seu surgimento A primeira versão do spring foi escrita por Rod Johnson em 2002, quando ele estava Lancando o seu livro Expert One-on-One
Leia maisAssociação Carioca de Ensino Superior Centro Universitário Carioca
Desenvolvimento de Aplicações Web Lista de Exercícios Métodos HTTP 1. No tocante ao protocolo de transferência de hipertexto (HTTP), esse protocolo da categoria "solicitação e resposta" possui três métodos
Leia maisIntegração de sistemas utilizando Web Services do tipo REST
Integração de sistemas utilizando Web Services do tipo REST Jhonatan Wilson Aparecido Garbo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil jhowgarbo@gmail.com jaime@unipar.br
Leia maisWeb Services REST. Sistemas Distribuídos. Mauro Lopes Carvalho Silva. Professor EBTT DAI Departamento de Informática Campus Monte Castelo
Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Objetivos Nesta aula
Leia maisJava EE 6. A revolução do. Um overview sobre as novidades da JSR 316. a r t i g o
a r t i g o Pedro Henrique S. Mariano (pedro.mariano@caelum.com.br) técnologo em Análise e Desenvolvimento de Sofware pela FIAP, possui as certificações SCJP 6 e SCRUM master.trabalha como consultor e
Leia maisSistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas)
Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) Web Container: e JSP Sumário Protocolo HTTP Exemplos de JSP (Java Server Pages) Exemplos JSP 2 Protocolo HTTP URL: Um URL (Uniform
Leia maisComo funciona a plataforma Superlógica? - Livro 4 de 4. Como funciona a interface de integração? Como você poderá complementar o sistema?
Como funciona a plataforma Superlógica? - Livro 4 de 4 API SUPERLÓGICA Como funciona a interface de integração? Como você poderá complementar o sistema? www.superlogica.com 0800 709 6800 https://github.com/superlogica/api
Leia maisJava Enterprise Edition. by Antonio Rodrigues Carvalho Neto
Java Enterprise Edition by Antonio Rodrigues Carvalho Neto Enterprise Edition Architecture O que é Java Enterprise Edition? Java EE é uma plataforma que reune diversas especificações relacionadas a computação
Leia maisPROJETO PEDAGÓGICO DE CURSOS
1 de 6 PROJETO PEDAGÓGICO DE CURSOS BURITREINAMENTOS MANAUS-AM MARÇO / 2015 2 de 6 PACOTES DE TREINAMENTOS BURITECH A Buritech desenvolveu um grupo de pacotes de treinamentos, aqui chamados de BuriPacks,
Leia maisMÓDULO. Linguagem de Programação para Web 2
MÓDULO Linguagem de Programação para Web 2 Distribuição das Disciplinas de Programação para Web LPW 1: MVC Servlets JSP LPW2: Visão geral do JEE, JSF MVC, Facelets, PrimeFaces,... Padrões de projeto relacionadas
Leia maisComo criar um EJB. Criando um projeto EJB com um cliente WEB no Eclipse
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
Leia maisCURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011
CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011 O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma
Leia maisPROGRAMAÇÃO SERVIDOR WEBSERVICES EM SISTEMAS WEB. Prof. Dr. Daniel Caetano 2012-1
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB WEBSERVICES Prof. Dr. Daniel Caetano 2012-1 Objetivos Compreender o que é um WebService e sua utilidade Compreender a lógica de funcionamento de um WebService Capacitar
Leia maisABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE
ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE Amarildo Aparecido Ferreira Junior 1, Ricardo Ribeiro Rufino 1 ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil aapfjr@gmail.com
Leia maisDESENVOLVIMENTO COM JAVA EE E SUAS ESPECIFICAÇÕES
DESENVOLVIMENTO COM JAVA EE E SUAS ESPECIFICAÇÕES Hugo Henrique Rodrigues Correa¹, Jaime Willian Dias 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil hugohrcorrea@gmail.com, jaime@unipar.br Resumo.
Leia maisMini-curso Gratuito Globalcode Slide 1
Mini-curso Gratuito Slide 1 Mini-curso Gratuito Introdução Enterprise Java Beans (EJB) 3.0 Slide 2 Agenda Plataforma Java EE Conceitos Iniciais (EJB) Session Bean Message-Driven Bean (MDB) Java Persistence
Leia maisComo sobreviver com Java 2? Saulo Arruda
Como sobreviver com Java 2? Saulo Arruda Agenda Apresentação Contexto do mercado Soluções para Java 5+ Soluções para Java 2 Conclusões Apresentação Saulo Arruda (http://sauloarruda.eti.br) Trabalha com
Leia maisProva Específica Cargo Desenvolvimento
UNIVERSIDADE FEDERAL DO PIAUÍ Centro de Educação Aberta e a Distância CEAD/UFPI Rua Olavo Bilac 1148 - Centro CEP 64.280-001 Teresina PI Brasil Fones (86) 3215-4101/ 3221-6227 ; Internet: www.uapi.edu.br
Leia maisFundamentos da Plataforma Java EE. Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br)
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
Leia maisProgramação Na Web. Servlets: Como usar as Servlets. Agenda. Template genérico para criar Servlets Servlet 2.4 API
Programação Na Web Servlets: Como usar as Servlets 1 António Gonçalves Agenda Template genérico para criar Servlets Servlet 2.4 API Exemplo: Hello World Output: Texto, HTML e hora local. Compilar uma Servlets
Leia maisEscrevendo meu primeiro porlet. Gustavo Lira Consultor 4Linux gustavo@4linux.com.br
Escrevendo meu primeiro porlet Gustavo Lira Consultor 4Linux gustavo@4linux.com.br Para quem tiver interesse a 4Linux está lançando os seguintes cursos: Desenvolvendo Portlets Java EE Desenvolvimento de
Leia maisJava para Desenvolvimento Web
Java para Desenvolvimento Web Servlets A tecnologia Servlet foi introduzida pela Sun Microsystems em 1996, aprimorando e estendendo a funcionalidade e capacidade de servidores Web. Servlets é uma API para
Leia maisDesenvolvimento WEB II. Professora: Kelly de Paula Cunha
Desenvolvimento WEB II Professora: Kelly de Paula Cunha O Java EE (Java Enterprise Edition): série de especificações detalhadas, dando uma receita de como deve ser implementado um software que utiliza
Leia maisJava para WEB. Servlets
Servlets Servlets são classes Java que são instanciadas e executadas em associação com servidores Web, atendendo requisições realizadas por meio do protocolo HTTP. Servlets é a segunda forma que veremos
Leia maisRestFull WebServices. Rafael Nunes Arquiteto de Software / Instrutor Globalcode. Globalcode Open4Education
RestFull WebServices Rafael Nunes Arquiteto de Software / Instrutor Globalcode 1 REST Integrando aplicações e disponibilizando serviços sem complicar a vida de ninguém. 2 Agenda > Integrando Aplicações
Leia maisService Oriented Architecture SOA
Service Oriented Architecture SOA Arquitetura orientada aos serviços Definição: Arquitetura de sistemas distribuídos em que a funcionalidade é disponibilizada sob a forma de serviços (bem definidos e independentes)
Leia maisPrática da Disciplina de Sistemas Distribuídos Serviços Web IFMA DAI Professor Mauro Lopes C. Silva
1. O que são Serviços Web (Web Services)? Prática da Disciplina de Sistemas Distribuídos Serviços Web IFMA DAI Professor Mauro Lopes C. Silva A ideia central dos Web Services parte da antiga necessidade
Leia maisJava II. Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com
Java II Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com Servlets Servlet Aplicação Java que é executada no servidor que estende a capacidade do servidor Web Alternativa Java para os scripts CGI Gerenciado
Leia maisSpring: Um suite de novas opções para Java EE
Spring: Um suite de novas opções para Java EE Alberto J Lemos (Dr. Spock) Instrutor Globalcode Ricardo Jun Taniguchi Instrutor Globalcode 1 Agenda > Sobre o Spring Framework > Escopo de integração com
Leia maisENTERPRISE JAVABEANS 3. Msc. Daniele Carvalho Oliveira
ENTERPRISE JAVABEANS 3 Msc. Daniele Carvalho Oliveira Apostila Servlets e JSP www.argonavis.com.br/cursos/java/j550/index.html INTRODUÇÃO Introdução Enterprise JavaBeans é um padrão de modelo de componentes
Leia maisWeb Services. (Introdução)
Web Services (Introdução) Agenda Introdução SOA (Service Oriented Architecture) Web Services Arquitetura XML SOAP WSDL UDDI Conclusão Introdução Comunicação distribuída Estratégias que permitem a comunicação
Leia maisRicardo R. Lecheta. Novatec
Ricardo R. Lecheta Novatec Copyright 2015 da Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer
Leia maisWeb Technologies. Tópicos da apresentação
Web Technologies Tecnologias de Middleware 2004/2005 Hugo Simões hsimoes@di.fc.ul.pt 1 A Web Tópicos da apresentação Tecnologias Web para suporte a clientes remotos (Applets,CGI,Servlets) Servidores Aplicacionais
Leia maisEJB 3.1: A Community Update
EJB 3.1: A Community Update Reza Rahman Autor, EJB 3 in Action Expert Group Member, Java EE 6 and EJB 3.1 Fundador, Cognicellence Julho de 2008 1 EJB 3.0: Revisão Breve > As grandes mudanças > EJB simplificado
Leia maisEnterprise Java Beans
Enterprise Java Beans Prof. Pasteur Ottoni de Miranda Junior DCC PUC Minas Disponível em www.pasteurjr.blogspot.com 1-O que é um Enterprise Java Bean? O Entertprise Java Bean (EJB) é um componente server-side
Leia maisDesenvolvimento Web com Framework Demoiselle versão 1.0
Desenvolvimento Web com Framework Demoiselle versão 1.0 Módulo 07: Outros Componentes Autor: Rodrigo Hjort Serpro / Coordenação Estratégica de Tecnologia / Curitiba www.frameworkdemoiselle.org.br Modificado
Leia maisArquitetura de Aplicações JSP/Web. Padrão Arquitetural MVC
Arquitetura de Aplicações JSP/Web Padrão Arquitetural MVC Arquitetura de Aplicações JSP/Web Ao projetar uma aplicação Web, é importante considerála como sendo formada por três componentes lógicos: camada
Leia maisArquitetura de uma Webapp
Arquitetura de uma Webapp Arquitetura J2EE Containers e componentes MVC: introdução Frederico Costa Guedes Pereira 2006 fredguedespereira@gmail.com Plataforma J2EE World Wide Web e a Economia da Informação
Leia maisUniversidade da Beira Interior
Universidade da Beira Interior Relatório Apresentação Java Server Pages Adolfo Peixinho nº4067 Nuno Reis nº 3955 Índice O que é uma aplicação Web?... 3 Tecnologia Java EE... 4 Ciclo de Vida de uma Aplicação
Leia maisINSTALAÇÃO E USO DO GOOGLE APP ENGINE PLUGIN utilizando o Eclipse Galileo
INSTALAÇÃO E USO DO GOOGLE APP ENGINE PLUGIN utilizando o Eclipse Galileo Requisitos de Ambiente: Desenvolvido por: Fabrício Alves e Daniela Claro contato: fabufbc@dcc.ufba.br, dclaro@ufba.br Java 1.6
Leia maisDesenvolvimento de aplicação web com framework JavaServer Faces e Hibernate
Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate Tiago Peres Souza 1, Jaime Willian Dias 1,2 ¹Universidade paranaense (Unipar) Paranavaí PR Brasil tiagop_ti@hotmail.com 2 Universidade
Leia maisSistemas Distribuídos e Tolerância a Falhas Mestrado em Engenharia Informática 1ª ano / 2ª semestre
Sistemas Distribuídos e Tolerância a Falhas Mestrado em Engenharia Informática 1ª ano / 2ª semestre Prática: 1 - A plataforma JEE (Java Enterprise Edition) UBI, DI, Paula Prata SDTF T01 1 Arquitectura
Leia maisSCE-557. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br
SCE-557 Técnicas de Programação para WEB Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br 1 Cronograma Fundamentos sobre servidores e clientes Linguagens Server e Client side
Leia maisUse a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP
Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP Software cliente: browser e outros Protocolo HTTP Infraestrutura de transporte
Leia maisIntegrações e o ecossistema Java. Fabric8 ao Resgate!
Integrações e o ecossistema Java Fabric8 ao Resgate! Quem sou eu? Leandro O. Gomes blog.leandrogomes.com @leandro_gomes 7 anos de estrada Arquiteto de Software na Owse no Rio de Janeiro Apaixonado por
Leia maisSISTEMA DE AGENDAMENTO E GERENCIAMENTO DE CONSULTAS CLÍNICAS
SISTEMA DE AGENDAMENTO E GERENCIAMENTO DE CONSULTAS CLÍNICAS Pablo dos Santos Alves Alexander Roberto Valdameri - Orientador Roteiro da apresentação Introdução Objetivos Motivação Revisão bibliográfica
Leia maisJSF - Controle de Acesso FERNANDO FREITAS COSTA
JSF - Controle de Acesso FERNANDO FREITAS COSTA ESPECIALISTA EM GESTÃO E DOCÊNCIA UNIVERSITÁRIA JSF Controle de Acesso Antes de iniciarmos este assunto, é importante conhecermos a definição de autenticação
Leia maisUM ESTUDO SOBRE ARQUITETURA PARA DESENVOLVIMENTO DE SOFTWARE WEB UTILIZANDO NOVAS TECNOLOGIAS
UM ESTUDO SOBRE ARQUITETURA PARA DESENVOLVIMENTO DE SOFTWARE WEB UTILIZANDO NOVAS TECNOLOGIAS Edi Carlos Siniciato ¹, William Magalhães¹ ¹ Universidade Paranaense (Unipar) Paranavaí PR Brasil edysiniciato@gmail.com,
Leia maisUma Introdução à Arquitetura CORBA. O Object Request Broker (ORB)
Uma Introdução à Arquitetura Francisco C. R. Reverbel 1 Copyright 1998-2006 Francisco Reverbel O Object Request Broker (ORB) Via de comunicação entre objetos (object bus), na arquitetura do OMG Definido
Leia maisSOA na Prática Ricardo Limonta
SOA na Prática Ricardo Limonta Arquiteto JEE Objetivo Apresentar os conceitos de Arquiteturas Orientadas a Serviços; Entender a relação entre SOA e a tecnologia Web Services; Implementar SOA com Web Services
Leia maisService Oriented Architecture SOA
Service Oriented Architecture SOA Arquitetura orientada aos serviços Definição: Arquitetura de sistemas distribuídos em que a funcionalidade é disponibilizada sob a forma de serviços (bem definidos e independentes)
Leia maisEnterprise Java Bean. Enterprise JavaBeans
Enterprise Java Bean Introdução Elementos do Modelo Enterprise JavaBeans A especificação do Enterprise JavaBeansTM (EJB) define uma arquitetura para o desenvolvimento de componentes de software distribuídos
Leia maisDESENVOLVIMENTO WEB UTILIZANDO FRAMEWORK PRIMEFACES E OUTRAS TECNOLOGIAS ATUAIS
DESENVOLVIMENTO WEB UTILIZANDO FRAMEWORK PRIMEFACES E OUTRAS TECNOLOGIAS ATUAIS Emanuel M. Godoy 1, Ricardo Ribeiro Rufino 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil godoymanel@gmail.com,
Leia maisDesenvolvimento WEB em JAVA. Palestrante: Lourival F. de Almeida Júnior
Desenvolvimento WEB em JAVA Palestrante: Lourival F. de Almeida Júnior Agenda Introdução Servlet Arquitetura de Software Velocity Struts Conclusão Referências Introdução (antes) Programador Produto Introdução
Leia maisOrientada a serviços: JAX-WS SOAP API
Orientadaa apresentação: uma aplicação webde apresentação orientada gera páginas webinterativascom vários tipos de linguagem de marcação (HTML, XML, e assim por diante) e conteúdo dinâmico em resposta
Leia maisPROGRAMAÇÃO PARA INTERNET RICA RICH INTERNET APPLICATIONS
PROGRAMAÇÃO PARA INTERNET RICA RICH INTERNET APPLICATIONS Prof. Dr. Daniel Caetano 2012-1 Objetivos Apresentar o que é uma Aplicação Rica para Internet Contextualizar tais aplicações na Web e os desafios
Leia maisProgramação II Programação para a Web. Christopher Burrows
Programação II Programação para a Web Christopher Burrows Apache Tomcat O Apache Tomcat é um Servlet Container desenvolvido pela Apache Software Foundation. Implementa as tecnologias Java Servlets e Java
Leia maisAmbiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração O livro
Desenvolvimento em PHP usando Frameworks Elton Luís Minetto Agenda Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração O livro Ambiente Web É o ambiente
Leia maisAmbiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração
Desenvolvimento em PHP usando Frameworks Elton Luís Minetto Agenda Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração Ambiente Web É o ambiente formado
Leia maisWebWork 2. João Carlos Pinheiro. jcpinheiro@cefet-ma.br
WebWork 2 João Carlos Pinheiro jcpinheiro@cefet-ma.br Versão: 0.5 Última Atualização: Agosto/2005 1 Agenda Introdução WebWork 2 & XWork Actions Views Interceptadores Validação Inversão de Controle (IoC)
Leia maisTecnologias Web. Java Enterprise Edition
Tecnologias Web Java Enterprise Edition Cristiano Lehrer, M.Sc. Introdução Java Enterprise Edition (JEE): Plataforma de tecnologias para o desenvolvimento de aplicações corporativas distribuídas. É uma
Leia maisWeb Browser como o processo cliente. Servidor web com páginas estáticas Vs. Aplicações dinâmicas para a Web:
Web Browser como o processo cliente Servidor web com páginas estáticas Vs Aplicações dinâmicas para a Web: 1 Cliente Web browser HTTP porto 80 Servidor web... JDBC RMI XML... Base de Dados Aplicação em
Leia maisMÓDULO Programação para Web 2
MÓDULO Programação para Web 2 Sistemas Web na JEE OBJETIVO DO MÓDULO Arquitetura Web em aplicações JEE Conceitos iniciais Desenvolvimento Web Aplicações web tornam-se mais e mais importantes Mais e mais
Leia maisruirossi@ruirossi.pro.br
Persistência Com JPA & Hibernate Rui Rossi dos Santos ruirossi@ruirossi.pro.br Mediador: Rui Rossi dos Santos Slide 1 Mapeamento Objeto-Relacional Contexto: Linguagem de programação orientada a objetos
Leia maisDesenvolvimento de aplicações Web. Java Server Pages
Desenvolvimento de aplicações Web Java Server Pages Hamilton Lima - athanazio@pobox.com 2003 Como funciona? Servidor web 2 Internet 1 Browser 3 Arquivo jsp 4 JSP Compilado 2 Passo a passo 1 browser envia
Leia maisFabio Velloso Lançamento WildFly 8
Fabio Velloso Agenda Introdução e objetivos Java EE 7 WildFly 8 Conclusão Agenda Introdução e objetivos Java EE 7 WildFly 8 Conclusão Fabio Velloso Bio Bacharel em Ciência da Computação - UFSCar MBA FGV
Leia maisAJAX no GASweb. Mas e afinal, para que usamos o AJAX?
Nível - Avançado AJAX no GASweb Por: Pablo Hadler AJAX (Asynchronous Javascript and XML) foi criado com o princípio de ser uma maneira rápida e otimizada de podermos fazer requisições Web, sendo esta totalmente
Leia maisArquiteturas SOA, WOA, e REST
Arquiteturas SOA, WOA, e REST Aplicação de Software Social Fred Figueiredo Luiz Borges Pedro Pires Arquiteturas SOA, WOA e REST Desenvolvimento de aplicações orientadas ao fornecimento de serviços que
Leia maisJ2EE. J2EE - Surgimento
J2EE Java 2 Enterprise Edition Objetivo: Definir uma plataforma padrão para aplicações distribuídas Simplificar o desenvolvimento de um modelo de aplicações baseadas em componentes J2EE - Surgimento Início:
Leia maisUFG - Instituto de Informática
UFG - Instituto de Informática Especialização em Desenvolvimento de Aplicações Web com Interfaces Ricas EJB 3.0 Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 5 Servidores de Aplicação
Leia maisUNIVERSIDADE. Sistemas Distribuídos
UNIVERSIDADE Sistemas Distribuídos Ciência da Computação Prof. Jesus José de Oliveira Neto Web Services Web Services Existem diferentes tipos de comunicação em um sistema distribuído: Sockets Invocação
Leia mais4 - Padrões da Camada de Integração. Introdução
Padrões de Projeto J2EE J931 Padrões da Camada de Integração Helder da Rocha (helder@acm.org) argonavis.com.br Introdução A camada de integração encapsula a lógica relacionada com a integração do sistema
Leia maisSCC-0263. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br
SCC-0263 Técnicas de Programação para WEB Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br 1 Cronograma Fundamentos sobre servidores e clientes Linguagens Server e Client side
Leia maisTUTORIAL JAVA AS - HTTP CLIENT COMPOSITION ENVIROMENT 7.1
TUTORIAL JAVA AS - HTTP CLIENT COMPOSITION ENVIROMENT 7.1 FABIO HAIDER 2008 C O N T E Ú D O : 1 HTTP Client...3 1.1 Arquitetura...3 1.2 Usando HTTP Client...3 1.2.1 Usuário...3 1.2.2 Implementação HTTP
Leia mais