Apache Camel rotas para as suas mensagens. Bruno Borges 2009

Tamanho: px
Começar a partir da página:

Download "Apache Camel rotas para as suas mensagens. Bruno Borges 2009"

Transcrição

1 Apache Camel rotas para as suas mensagens Bruno Borges 2009

2 Apache Camel

3 Integração SOAP MSMQ JMS RSS FTP JT/400 JDBC SMTP HTTP FIX JBI JPA Twitter SOAP LDAP TCP

4 Integração

5 Camel

6 ?

7 Framework Open Source para Padrões de Integração

8 EIP Enterprise Integration Patterns

9 Padrões Roteamento de Mensagens C o n te n t- b a se d R o u te r M e ssa g e F iltec ro m o e vit a r re ce b im e n to d e m e n sa g e n s in d e se ja d a s? S p litte r A g g re g a to r R e se q u e n ce r C o m o t ra t a r u m a situ a çã o o n d e a im p le m e n ta çã o d e u m a f u n çã o ló g ica e st á e sp a lh a d a e m m ú lt ip lo s siste m a s? C o m o p r o ce ssa r u m a m e n sa g e m, se e sta co n t é m e le m e n to s q u e d e ve m se r p ro ce ssa d o s in d ivid u a lm e n t e d e fo rm a s d ife re n t e s? C o m o co m b in a r o re su lta d o d e m e n sa g e n s in d ivid u a is, p o ré m r e la cio n a d a s, n u m a ú n ica sa íd a? C o m o re to m a r a o r d e m d e m e n sa g e n s re la cio n a d a s e n via d a s f o ra d e o rd e m? R e cip ie n t L istc o m o ro te a r u m a m e n sa g e m a u m a list a d in â m ica d e d e st in a rá rio s?

10 Roteamento mensagem

11 Linguagens BeanShell SQL JavaScript XPath Groovy XQuery Python JSR 223 Scripting PHP OGNL Ruby EL (JSP/JSF) Scala

12 Componentes ActiveMQ AMQP Atom / RSS Beans Comet (Jetty) CXF DataSet (testes) Direct File FIX FTP / SFTP Hibernate HL7 MLLP HTTP ibatis JBI / JCR JDBC / JPA JMS JT/400 LDAP LOG Mail Mina MSMQ Quartz RMI Velocity XMPP Xquery... Twitter?

13 Definição de Rotas CamelContext public class CamelStartup { public static void main(string... args) throws Exception { CamelContext context = new DefaultCamelContext(); context.addroutes(new MyRoute()); context.start(); RouteBuilder DSL Domain Specific Language Java Spring XML Scala

14 Definição de Rotas Java public class TwitterRoute extends RouteBuilder { public void configure() throws Exception { from("file:outbox").transform(body().converttostring()).to("twitter:tweetit"); from("twitter:tweets?follow=brunoborges").transform(body().converttostring()).to("file:twitters-log");

15 Definição de Rotas Spring XML <camelcontext xmlns=" <route> <from uri="activemq:topic:quotes"/> <filter> <xpath>/quote/product = 'widget'</xpath> <to uri="mqseries:widgetquotes"/> </filter> </route> </camelcontext>

16 Definição de Rotas Scala class MyRouteBuilder extends RouteBuilder { "direct:a" --> "mock:a" "direct:b" to "mock:b"

17 Repetindo... Roteamento de Mensagens C o n te n t- b a se d R o u te r M e ssa g e F iltec ro m o e vit a r re ce b im e n to d e m e n sa g e n s in d e se ja d a s? S p litte r A g g re g a to r R e se q u e n ce r C o m o t ra t a r u m a situ a çã o o n d e a im p le m e n ta çã o d e u m a f u n çã o ló g ica e st á e sp a lh a d a e m m ú lt ip lo s siste m a s? C o m o p r o ce ssa r u m a m e n sa g e m, se e sta co n t é m e le m e n to s q u e d e ve m se r p ro ce ssa d o s in d ivid u a lm e n t e d e fo rm a s d ife re n t e s? C o m o co m b in a r o re su lta d o d e m e n sa g e n s in d ivid u a is, p o ré m r e la cio n a d a s, n u m a ú n ica sa íd a? C o m o re to m a r a o r d e m d e m e n sa g e n s re la cio n a d a s e n via d a s f o ra d e o rd e m? R e cip ie n t L istc o m o ro te a r u m a m e n sa g e m a u m a list a d in â m ica d e d e st in a rá rio s?

18 Content-based Router RouteBuilder route = new RouteBuilder() { public void configure() { from("seda:a").choice().when(header("foo").isequalto("bar")).to("seda:b").when(header("foo").isequalto("cheese")).to("seda:c").otherwise().to("seda:d"); ;

19 Content-based Router <camelcontext xmlns=" <route> <from uri="activemq:neworders" /> <choice> <when> <xpath>/order/product = 'widget'</xpath> <to uri="activemq:orders.widgets" /> </when> <when> <xpath>/order/product = 'gadget'</xpath> <to uri="activemq:orders.gadgets" /> </when> <otherwise> <to uri="activemq:orders.bad" /> </otherwise> </choice> </route> </camelcontext>

20 Content-based Router "direct:a" ==> { to ("mock:polyglot") choice { when (_.in == "<hello/>") to ("mock:english") when (_.in == "<hallo/>") { to ("mock:dutch") to ("mock:german") otherwise to ("mock:french")

21 Message Filter public class MyRouteBuilder extends RouteBuilder { public void configure() { from("activemq:topic:quotes").filter().xpath("/quote/product = 'widget'").to("mqseries:widgetquotes");

22 Message Filter <camelcontext xmlns=" <route> <from uri="activemq:topic:quotes" /> <filter> <xpath>/quote/product = 'widget'</xpath> <to uri="mqseries:widgetquotes" /> </filter> </route> </camelcontext>

23 Message Filter "direct:a" when(_.in == "<hello/>") to("mock:a") "direct:b" ==> { when(_.in == "<hallo/>") { --> ("mock:b") to ("mock:c") otherwise { to ("mock:e") to ("mock:d")

24 Message Splitter public class MyRouteBuilder extends RouteBuilder { public void configure() { from("file://orders").splitter(body().tokenize("\n")).to("activemq:order.items");

25 Message Splitter public class MyRouteBuilder extends RouteBuilder { public void configure() { from("file://orders") // Splitter com XQuery.splitter(xquery("/order/items")).to("activemq:Order.Items");

26 Message Aggregator public class MyRouteBuilder extends RouteBuilder { public void configure() { from("activemq:inventory.items").aggregator().xpath("/order/@id").to("activemq:inventory.order");

27 Resequencer public class MyRouteBuilder extends RouteBuilder { public void configure() { from("direct:a").resequencer(header("jmspriority")).to("seda:b");

28 Recipient List public class MyRouteBuilder extends RouteBuilder { public void configure() { from("direct:a").recipientlist(header("destinos"));

29 Camel Twitter CAMEL-1520

30 Padrões Tradução de Mensagens M e ssa g e T ra n sla to r C o n te n t E n rich e r C o n te n t F ilte r N o rm a liz e r C o m o sist e m a s u sa n d o d if e re n t e s f o r m a t o s d e m e n sa g e n s p o d e m co m u n ica r-se e n t re si? C o m o se co m u n ica r co m u m sist e m a se a m e n sa g e m d e o rig e m n ã o d isp õ e d e to d o s o s d a d o s n e ce ssá rio s? C o m o sim p lif ica r m e n sa g e n s m u it o g ra n d e s, q u a n d o so m e n te p o u co s d a d o s in t e re ssa m? C o m o p ro ce ssa r m e n sa g e n s se m a n t ica m e n t e sim ila re s, m a s e m d if e re n t e s f o rm a t o s?

31 Message Translator

32 Content Enricher

33 Content Filter

34 Exemplos from("direct:inicio").process(new Processor() { public void process(exchange exchange) { Message in = exchange.getin(); in.setbody(in.getbody(string.class) + " by Camel!"); ).to("mock:result"); from("direct:inicio").transform(body().append(" Camel!")).to("mock:result"); <camelcontext xmlns=" <route> <from uri="direct:start" /> <transform> <simple>${in.body extra data!</simple> </transform> <to uri="mock:end" /> </route> </camelcontext>

35 Normalizer

36 Dependency Injection Google Guice

37 Beans

38 Beans Tradutores public class MinhaRota extends RouteBuilder public void configure() throws Exception { from("activemq:inbox").beanref("meubean").beanref("meuoutrobean", "metodoqualquer").to("activemq:outbox");

39 Beans Conversores package org.apache.camel.component.twitter; import java.text.parseexception; import public class TwitterConverter public static String tostring(status status) throws ParseException { return status.tostring();

40 Anotações em Beans public class Foo { public void String String id) { // faz algo

41 Beans Consumidores public class Foo = "jms:queuefoo") public void onfoo( Exchange String grupo) { // faz algo

42 Camel, onde tem? Apache ServiceMix (ESB) OpenESB Apache ActiveMQ FUSE Java Embedded

43 Monte um Camelo! Perguntas?

44 Links

Integrações e o ecossistema Java. Fabric8 ao Resgate!

Integraçõ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 mais

Java Básico. Matrícula de Alunos. Marco Antonio, Arquiteto de Software TJDF ma@marcoreis.eti.br. Novembro/2005

Java Básico. Matrícula de Alunos. Marco Antonio, Arquiteto de Software TJDF ma@marcoreis.eti.br. Novembro/2005 Java Básico Matrícula de Alunos Marco Antonio, Arquiteto de Software TJDF ma@marcoreis.eti.br Novembro/2005 Objetivos OO: trocar mensagens entre os objetos Exception: tratar exceções Análise: implementar

Leia mais

JPA: Persistência padronizada em Java

JPA: Persistência padronizada em Java JPA: Persistência padronizada em Java FLÁVIO HENRIQUE CURTE Bacharel em Engenharia de Computação flaviocurte.java@gmail.com Programação Orientada a Objetos X Banco de Dados Relacionais = Paradigmas diferentes

Leia mais

Groovy & Grails. Arian Pasquali. quarta-feira, 12 de outubro de 11

Groovy & Grails. Arian Pasquali. quarta-feira, 12 de outubro de 11 Groovy & Grails Arian Pasquali Arian Pasquali 24 anos eu Formado em Sistemas de Informação Java, Objective-C, Flex, Groovy SCJP, SCJA, ACE 6 anos de Java Orientação a Objetos Plataforma Multi-plataforma

Leia mais

Como 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 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 mais

Universidade Federal de Juiz de Fora Ciência da Computação Sistemas Distribuídos Professor Ciro Barbosa

Universidade Federal de Juiz de Fora Ciência da Computação Sistemas Distribuídos Professor Ciro Barbosa Universidade Federal de Juiz de Fora Ciência da Computação Sistemas Distribuídos Professor Ciro Barbosa Web Service Plínio Antunes Garcia Sam Ould Mohamed el Hacen Sumário Introdução conceitual O Web Service

Leia mais

Integração Orientada a Serviços

Integração Orientada a Serviços Integração Orientada a Serviços Porto Alegre, Agosto de 2006 Agenda Sobre a e-core SOA O que é? Web Services x SOA Principal Motivação - Integração SOI ESB BPEL JBI ServiceMix Solução Proposta A Empresa

Leia mais

Programa Copa do Mundo 2014

Programa Copa do Mundo 2014 Programa Copa do Mundo 2014 Programa Copa do Mundo 2014 Gerente do Programa: Mario Queiroz Guimarães Neto Rede do Programa: Rede de Cidades Objetivo do Programa: Organizar com excelência os eventos FIFA

Leia mais

Plataforma para Agentes

Plataforma para Agentes Plataforma para es JATLite - Java Template, Lite O que é o JATLite? http://java.stanford.edu/ http://www.fe.up.pt/~eol/aiad/jatlite/doc/index.html Pacote de programas em Java permitindo: rápida criação

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos LICENCIATURA EM COMPUTAÇÃO Prof. Adriano Avelar Site: www.adrianoavelar.com Email: eam.avelar@gmail.com Relembrando... Mecanismos de Comunicação Middleware Cenário em uma rede Local

Leia mais

WOW Mobile Rui Miguel Miranda Ramos

WOW 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 mais

Midleware CXF. Angélica A. P. Ribeiro, Leandro M. G. Sousa. Universidade Federal de Uberlândia (UFU) Caixa Postal 38520 000 Monte Carmelo MG Brazil

Midleware CXF. Angélica A. P. Ribeiro, Leandro M. G. Sousa. Universidade Federal de Uberlândia (UFU) Caixa Postal 38520 000 Monte Carmelo MG Brazil Midleware CXF Angélica A. P. Ribeiro, Leandro M. G. Sousa Universidade Federal de Uberlândia (UFU) Caixa Postal 38520 000 Monte Carmelo MG Brazil Faculdade de computação {angelribeiro,leandromagno}@si.ufu.br

Leia mais

soluções transversais SOLUÇÕES middleware

soluções transversais SOLUÇÕES middleware soluções transversais SOLUÇÕES middleware RESUMO DA SOLUÇÃO ITbank framework 4g performance orquestração interoperabilidade O Middleware SOA ITBank framework 4g implementa uma arquitetura SOA com orquestração

Leia mais

Spring Integration. Saiba como desenhar uma solução completa utilizando padrões EAI com o Spring Integration

Spring Integration. Saiba como desenhar uma solução completa utilizando padrões EAI com o Spring Integration capa_ Aplicando padrões EAI com Spring Integration Saiba como desenhar uma solução completa utilizando padrões EAI com o Spring Integration Giuliano Bem Hur Firmino giulianofirmino@yahoo.com.br especialista

Leia mais

TECNOLOGIA JAVA TENDÊNCIAS, MERCADO E FUTURO

TECNOLOGIA JAVA TENDÊNCIAS, MERCADO E FUTURO TECNOLOGIA JAVA TENDÊNCIAS, MERCADO E FUTURO Bacharel em Ciências da Computação PUC/SP 2001 Pós-graduado em Gestão de Negócios (MBA) IPT/USP 2006 Arquiteto de Software Desenvolvedor Java Consultoria, Treinamento

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS CUP Disk Memoey CUP Memoey Disk Network CUP Memoey Disk Remote Method Invocation (RMI) Introdução Solução JAVA para Objetos Distribuídos Um objeto existe em uma máquina É possível

Leia mais

Java Spaces Exemplos

Java Spaces Exemplos Java Spaces Exemplos Programação com Objetos Distribuídos (C. Geyer) Java Spaces - Exemplos V0 1 Autoria! Autores! Local " Cláudio Geyer " Instituto de Informática " UFRGS " disciplina: Programação com

Leia mais

www.investorbrasil.com

www.investorbrasil.com Proposta curso preparatório para CPA 20 - ANBIMA www.investorbrasil.com Apresentação INVESTOR APRESENTAÇÃO A INVESTOR é uma escola que nasceu da necessidade das pessoas aprenderem as ferramentas e instrumentos

Leia mais

P R E F E I T U R A M U N I C I P A L D E J A R D I M

P R E F E I T U R A M U N I C I P A L D E J A R D I M N Ú C L E O D E C O M P R A S E L I C I T A Ç Ã O A U T O R I Z A Ç Ã O P A R A R E A L I Z A Ç Ã O D E C E R T A M E L I C I T A T Ó R I O M O D A L I D A D E P R E G Ã O P R E S E N C I A L N 027/ 2

Leia mais

Uma Introdução à Arquitetura CORBA. O Object Request Broker (ORB)

Uma 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 mais

U N I V E R S I D A D E F E D E R A L D O P A R A N Á L E T Í C I A M A R I A G R O B É R I O

U N I V E R S I D A D E F E D E R A L D O P A R A N Á L E T Í C I A M A R I A G R O B É R I O U N I V E R S I D A D E F E D E R A L D O P A R A N Á L E T Í C I A M A R I A G R O B É R I O A B O R T O : U M A Q U E S T Ã O M O R A L, L E G A L, C U L T U R A L E E C O N Ô M I C A C U R I T I B A

Leia mais

EMML Enterprise Mashup Markup Language. Jesús Martín Talavera Portocarrero jesus140@gmail.com

EMML Enterprise Mashup Markup Language. Jesús Martín Talavera Portocarrero jesus140@gmail.com EMML Enterprise Mashup Markup Language Jesús Martín Talavera Portocarrero jesus140@gmail.com Agenda Mashup EMML Instalação do motor EMML Implantação de um script mashup EMML Testes Elementos EMML Mashup

Leia mais

Sistemas Empresariais Integrados

Sistemas Empresariais Integrados Sistemas Empresariais Integrados Introdução Basic MOM: in basic MOM it is the sender who specifies the identity of the receivers sender receiver message broker core : with message brokers, custom message

Leia mais

Se seu negócio requer o tipo de

Se seu negócio requer o tipo de ANÁLISE Ambiente com arquitetura orientada a serviço Ambiente com arquitetura orientada a serviço ANÁLISE Ônibus corporativo Um serviço de Bus corporativo é uma via expressa centralizada para dados em

Leia mais

Ac esse o sit e w w w. d e ca c lu b.c om.br / es t u dos 2 0 1 5 e f a ç a s u a insc riçã o cl ica nd o e m Pa r t i c i p e :

Ac esse o sit e w w w. d e ca c lu b.c om.br / es t u dos 2 0 1 5 e f a ç a s u a insc riçã o cl ica nd o e m Pa r t i c i p e : INSCRIÇÕES ABERTAS ATÉ 13 DE JULH DE 2015! Ac esse o sit e w w w. d e ca c lu b.c om.br / es t u dos 2 0 1 5 e f a ç a s u a insc riçã o cl ica nd o e m Pa r t i c i p e : Caso vo cê nunca t e nh a pa

Leia mais

Apresentação. Fernando Lozano

Apresentação. Fernando Lozano JBoss AS Avançado JBoss AS Slide 1 2 Apresentação Fernando Lozano fernando@lozano.eti.br Profissional Certificado LPI RHCE JBoss Dev SCWCD IBM SOA MCSE Consultor em Software Livre há 15 anos Consultor

Leia mais

Web 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: 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 mais

INT-9: Implementing ESB Processes with OpenEdge and Sonic David Cleary

INT-9: Implementing ESB Processes with OpenEdge and Sonic David Cleary Implementando Processos ESB com OpenEdge e Sonic Paulo Costa Global Field Services Agenda Desenvolvendo Processos de Negócio Visão geral da tecnologia Desenvolvendo um processo de negócio do início ao

Leia mais

insfcanceof new public switch transient while byte continue extends for int null

insfcanceof new public switch transient while byte continue extends for int null Palavras -chave de JAV A abstract catch do final implements long private static throw void boolean char double finally import native protected super throws volatile break class float insfcanceof new public

Leia mais

MIDDLEWARE Aplicativos RMI, RPC e eventos Camadas Protocolo Requesição-Respostal Middleware Representação Externa dos Dados Sistemas Operacionais

MIDDLEWARE Aplicativos RMI, RPC e eventos Camadas Protocolo Requesição-Respostal Middleware Representação Externa dos Dados Sistemas Operacionais RMI JAVA MIDDLEWARE Aplicativos RMI, RPC e eventos Protocolo Requesição-Respostal Camadas Middleware Representação Externa dos Dados Sistemas Operacionais RMI REMOTE METHOD INVOCATION Invocação remota

Leia mais

Message Driven Beans. Apresentação. Introdução Implementação de MDBs Deployment no JBoss Java Messaging Service Exemplo

Message Driven Beans. Apresentação. Introdução Implementação de MDBs Deployment no JBoss Java Messaging Service Exemplo Message Driven Beans Apresentação Introdução Implementação de MDBs Deployment no JBoss Java Messaging Service Exemplo 1 Introdução Message Driven Beans são EJBs que consomem mensagens enviadas para filas

Leia mais

Como você vê a visita e o acompanhante nos serviços de saúde? Por que redimensionar o espaço da visita e do acompanhante?

Como você vê a visita e o acompanhante nos serviços de saúde? Por que redimensionar o espaço da visita e do acompanhante? Como você vê a visita e o acompanhante nos serviços de saúde? Por que redimensionar o espaço da visita e do acompanhante? Visita aberta e acompanhante é um direito instituinte e um analisador, uma vez

Leia mais

Listando, gravando, alterando e excluindo registro do banco de dados com JSP

Listando, gravando, alterando e excluindo registro do banco de dados com JSP SISTEMAS DE INFORMAÇÃO 3º ANO PROGRAMAÇÃO II PROF. RONALDO FERREIRA DA SILVA JavaServer Pages JavaServer Pages (JSP) é uma tecnologia que ajuda os desenvolvedores de software a criarem páginas web geradas

Leia mais

JSF - Controle de Acesso FERNANDO FREITAS COSTA

JSF - 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 mais

REVIS TA CONTATO LEITOR GALERIA COLUNAS EDIÇÕES ANTIGAS ASSINATURA. 30/7/2014 Salão de Gramado encerra nesta quinta-feira.

REVIS TA CONTATO LEITOR GALERIA COLUNAS EDIÇÕES ANTIGAS ASSINATURA. 30/7/2014 Salão de Gramado encerra nesta quinta-feira. Q u a, 3 0 d e J u l h o d e 2 0 1 4 search... REVIS TA CONTATO LEITOR GALERIA COLUNAS EDIÇÕES Selecione a Edição ANTIGAS C l i q u e n o l i n k a b a i xo p a r a a c e s s a r a s e d i ç õ e s a n

Leia mais

Criar uma aplicação JPA2 com EclipseLink e H2

Criar uma aplicação JPA2 com EclipseLink e H2 Criar uma aplicação JPA2 com EclipseLink e H2 1) Criar uma aplicação Java no NetBeans. File > New Project > Java, Java Application > Project name: JPA2 Finish. 2) Acrescentar ao Projeto NetBeans a biblioteca

Leia mais

A ) O cliente terá que implementar uma interface remota. . Definir a interface remota com os métodos que poderão ser acedidos remotamente

A ) O cliente terá que implementar uma interface remota. . Definir a interface remota com os métodos que poderão ser acedidos remotamente Java RMI - Remote Method Invocation Callbacks Folha 9-1 Vimos, na folha prática anterior, um exemplo muito simples de uma aplicação cliente/ servidor em que o cliente acede à referência remota de um objecto

Leia mais

Middleware de Aplicações Paralelas/Distribuídas

Middleware de Aplicações Paralelas/Distribuídas Computação Paralela Middleware de Aplicações Paralelas/Distribuídas João Luís Ferreira Sobral Departamento do Informática Universidade do Minho Outubro 2005 Principais aspectos a gerir pelo Middleware

Leia mais

UNIVERSIDADE. Sistemas Distribuídos

UNIVERSIDADE. Sistemas Distribuídos UNIVERSIDADE Sistemas Distribuídos Ciência da Computação Prof. Jesus José de Oliveira Neto Web Services (continuação) WSDL - Web Service Definition Language WSDL permite descrever o serviço que será oferecido

Leia mais

Invocação de Métodos Remotos

Invocação de Métodos Remotos Invocação de Métodos Remotos Java RMI (Remote Method Invocation) Tópicos Tecnologia RMI Introdução Modelo de camadas do RMI Arquitetura Fluxo de operação do RMI Passos para implementação Estudo de caso

Leia mais

Enterprise Java Beans

Enterprise 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 mais

Programação com sockets (em Java)

Programação com sockets (em Java) com sockets (em Java) Prof. Dr. Julio Arakaki Depto. Ciência da 1 Comunicação entre processos // aplicações - é um dos mecanismos mais utilizados - Java oferece modos de utilização:. TCP ( Transmission

Leia mais

Objetos Distribuídos - Programação Distribuída Orientado a Objetos. Luiz Affonso Guedes

Objetos Distribuídos - Programação Distribuída Orientado a Objetos. Luiz Affonso Guedes Objetos Distribuídos - Programação Distribuída Orientado a Objetos Luiz Affonso Guedes Introdução Conceitos básicos programação distribuída + programação orientada a objetos = Objetos distribuídos Motivação

Leia mais

Módulo 5 - JDBC java.sql - Conexão com Banco de Dados

Módulo 5 - JDBC java.sql - Conexão com Banco de Dados Aplicações de Linguagem de Programação Orientada a Objetos 2ºsem/2012 (Professor: Tiago) Módulo 5 - JDBC java.sql - Conexão com Banco de Dados Fazer o download do drive de conexão com o BD: http://jdbc.postgresql.org/download.html

Leia mais

Sistemas 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 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 mais

Programação de Sockets

Programação de Sockets Programação de Sockets Objetivo: aprender a construir aplicações cliente/servidor que se comunicam usando sockets Socket API introduzida no BSD4.1 UNIX, 1981 explicitamente criados, usados e liberados

Leia mais

Invocação de Métodos Remotos RMI (Remote Method Invocation)

Invocação de Métodos Remotos RMI (Remote Method Invocation) Invocação de Métodos Remotos RMI (Remote Method Invocation) Programação com Objetos Distribuídos Um sistema de objetos distribuídos permite a operação com objetos remotos A partir de uma aplicação cliente

Leia mais

Aula 30 - Sockets em Java

Aula 30 - Sockets em Java Aula 30 - Sockets em Java Sockets Sockets são estruturas que permitem que funções de software se interconectem. O conceito é o mesmo de um soquete (elétrico, telefônico, etc...), que serve para interconectar

Leia mais

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

Java 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 mais

Java 2 Standard Edition. Fundamentos de. Objetos Remotos. Helder da Rocha www.argonavis.com.br

Java 2 Standard Edition. Fundamentos de. Objetos Remotos. Helder da Rocha www.argonavis.com.br Java 2 Standard Edition Fundamentos de Objetos Remotos Helder da Rocha www.argonavis.com.br 1 Sobre este módulo Este módulo tem como objetivo dar uma visão geral, porém prática, da criação e uso de objetos

Leia mais

IN S A In s titu t N a tio n a l

IN S A In s titu t N a tio n a l IN S A : U m a re d e d e 5 e s c o la s s u p e rio re s d e e n g e n h a ria O INS A de Rennes existe desde 1966 R ouen O INS A de Rouen existe desde 1985 O INS A de S trasbourg existe desde 2003 R

Leia mais

JPA Java Persistence API. Prof. Ramon Chiara

JPA Java Persistence API. Prof. Ramon Chiara JPA Java Persistence API Prof. Ramon Chiara JDBC Java DataBase Connectivity Acesso a bancos de dados Independência de banco de dados JDBC Aplicação JDBC Driver Banco de Dados JDBC Java DataBase Connectivity

Leia mais

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

Spring: 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 mais

A interface de uma mensagem é extremamente flexível e permite várias formas de customização de conteúdo. Figura 1 - Tipos de Mensagens JMS

A interface de uma mensagem é extremamente flexível e permite várias formas de customização de conteúdo. Figura 1 - Tipos de Mensagens JMS Programando com Java Artigo http://mballem.wordpress.com/ Chat JMS com ActiveMQ Java Message Service Autor Marcio Ballem: é formado em Sistemas de Informação e possui certificação Oracle Certified Professional,

Leia mais

INSTALAÇÃ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 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 mais

J2EE. J2EE - Surgimento

J2EE. 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 mais

Aplicabilidade: visão geral

Aplicabilidade: visão geral CURSO BÁSICO SAXES 2 Aplicabilidade: visão geral BI Comércio Indústria nf-e Serviços Software house Enterprise Business Bus Banco financeiro Instituição Sindicato ERP html Casos 3 6 Customização: importação

Leia mais

ARQUITETURA SISGRAD. Manual de Utilização. Versão: 2.0. Criação: 05 de julho de 2007 Autor: André Penteado

ARQUITETURA SISGRAD. Manual de Utilização. Versão: 2.0. Criação: 05 de julho de 2007 Autor: André Penteado ARQUITETURA SISGRAD Manual de Utilização Versão: 2.0 Criação: 05 de julho de 2007 Autor: André Penteado Última Revisão: 09 de outubro de 2009 Autor: Alessandro Moraes Controle Acadêmico - Arquitetura SISGRAD

Leia mais

Serviços Web: Arquitetura

Serviços Web: Arquitetura 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 mais

Sintaxe Geral Tipos de Dados. Prof. Angelo Augusto Frozza, M.Sc.

Sintaxe Geral Tipos de Dados. Prof. Angelo Augusto Frozza, M.Sc. Sintaxe Geral Tipos de Dados Comentários Comentários: De linha: // comentário 1 // comentário 2 De bloco: /* linha 1 linha 2 linha n */ De documentação: /** linha1 * linha2 */ Programa Exemplo: ExemploComentario.java

Leia mais

Fatos e Mitos do Java EE. Fernando Lozano Consultor 4Linux lozano@4linux.com.br

Fatos e Mitos do Java EE. Fernando Lozano Consultor 4Linux lozano@4linux.com.br Fatos e Mitos do Java EE Fernando Lozano Consultor 4Linux lozano@4linux.com.br O Que É o Java EE? É um padrão de bibliotecas e componentes (APIs) para a criação de aplicações corporativas Também é um padrão

Leia mais

Introdução à Plataforma J2EE Java2 Enterprise Edition. Alex de V. Garcia, Dr.

Introdução à Plataforma J2EE Java2 Enterprise Edition. Alex de V. Garcia, Dr. Introdução à Plataforma J2EE Java2 Enterprise Edition 1 O que é a plataforma J2EE? Estende a linguagem Java através de padrões simples e unificados para aplicações distribuídas através de um modelo baseado

Leia mais

Evolução guiada por APIs. com REST para modernizar seu legado

Evoluçã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 mais

A IMPORTÂNCIA DA INTERDISCIPLINARIDADE EM SAÚDE

A IMPORTÂNCIA DA INTERDISCIPLINARIDADE EM SAÚDE AUDITORIA IA CLÍNICA A IMPORTÂNCIA DA INTERDISCIPLINARIDADE EM SAÚDE Auditoria é em um exame cuidadoso e sistemático das atividades desenvolvidas em determinada empresa ou setor, cujo objetivo é averiguar

Leia mais

PADRÃO PARA ENVIO DE E-MAIL. Versão 1.0

PADRÃO PARA ENVIO DE E-MAIL. Versão 1.0 PADRÃO PARA ENVIO DE E-MAIL Versão 1.0 Fevereiro 2006 Sumário de Informações do Documento Tipo do Documento: Relatório Título do Documento: Padrão para envio de e-mail Estado do Documento: Elaborado Responsáveis:

Leia mais

A N E X O P L A N O M U N I C I P A L D E E D U C A Ç Ã O 2 0 1 5 2024

A N E X O P L A N O M U N I C I P A L D E E D U C A Ç Ã O 2 0 1 5 2024 E S T A D O D E S A N T A C A T A R I N A P R E F E I T U R A M U N I C I P A L D E M A J O R V I E I R A S E C R E T A R I A M U N I C I P A L D E E D U C A Ç Ã O, C U L T U R A E D E S P O R T O C N

Leia mais

Spring Framework Luiz Daniel Creão Augusto laugusto@ime.usp.br Sistemas de Middleware Avançados IME-USP - 2006/02

Spring Framework Luiz Daniel Creão Augusto laugusto@ime.usp.br Sistemas de Middleware Avançados IME-USP - 2006/02 Spring Framework Luiz Daniel Creão Augusto laugusto@ime.usp.br Sistemas de Middleware Avançados IME-USP - 2006/02 Agenda Introdução Inversão de Controle Spring AOP Portable Service Abstractions Spring

Leia mais

Capítulo 1 - Java EE 6 por alto - 1

Capí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 mais

JDBC. Siga as instruções para instalar o banco de dados H2 e criar a tabela Alunos.

JDBC. Siga as instruções para instalar o banco de dados H2 e criar a tabela Alunos. JDBC CRIANDO O BANCO DE DADOS: Siga as instruções para instalar o banco de dados H2 e criar a tabela Alunos. CRIANDO O PROJETO JAVA PARA DESKTOP: Crie um projeto Java chamado Prograd Crie um pacote chamado

Leia mais

Prova Específica Cargo Desenvolvimento

Prova 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 mais

FERRAMENTAS DE DESENVOLVIMENTO DE SOFTWARE OPEN SOURCE. Caso de Sucesso no ACM, IP

FERRAMENTAS DE DESENVOLVIMENTO DE SOFTWARE OPEN SOURCE. Caso de Sucesso no ACM, IP FERRAMENTAS DE DESENVOLVIMENTO DE SOFTWARE OPEN SOURCE Caso de Sucesso no ACM, IP Metodologia, processos, ferramentas, arquitetura, tecnologias e infraestrutura usadas na implementação de portais em Liferay,

Leia mais

Comandos de repetição For (inicialização; condição de execução; incremento/decremento) { //Código }

Comandos de repetição For (inicialização; condição de execução; incremento/decremento) { //Código } Este documento tem o objetivo de demonstrar os comandos e sintaxes básicas da linguagem Java. 1. Alguns passos para criar programas em Java As primeiras coisas que devem ser abordadas para começar a desenvolver

Leia mais

Tutorial RMI (Remote Method Invocation) por Alabê Duarte

Tutorial RMI (Remote Method Invocation) por Alabê Duarte Tutorial RMI (Remote Method Invocation) por Alabê Duarte Este tutorial explica basicamente como se implementa a API chamada RMI (Remote Method Invocation). O RMI nada mais é que a Invocação de Métodos

Leia mais

Prof. Fellipe Araújo Aleixo fellipe.aleixo@ifrn.edu.br

Prof. Fellipe Araújo Aleixo fellipe.aleixo@ifrn.edu.br Prof. Fellipe Araújo Aleixo fellipe.aleixo@ifrn.edu.br A arquitetura Enterprise JavaBeans é uma arquitetura de componentes para o desenvolvimento e a implantação de aplicativos de negócio distribuídos

Leia mais

Programação em Rede Baseada em Java. Luiz Affonso Guedes Tópicos em Redes de Computadores Programação Distribuída www.dca.ufrn.

Programação em Rede Baseada em Java. Luiz Affonso Guedes Tópicos em Redes de Computadores Programação Distribuída www.dca.ufrn. Programação em Rede Baseada em Java Luiz Affonso Guedes Tópicos em Redes de Computadores Programação Distribuída www.dca.ufrn.br/~affonso/cursos Definiçõs Básicas Uma rede é um conjunto de computadores

Leia mais

Sistemas Distribuídos na Web. Pedro Ferreira DI - FCUL

Sistemas Distribuídos na Web. Pedro Ferreira DI - FCUL Sistemas Distribuídos na Web Pedro Ferreira DI - FCUL Arquitetura da Web Criada por Tim Berners-Lee no CERN de Geneva Propósito: partilha de documentos Desde 1994 mantida pelo World Wide Web Consortium

Leia mais

Hoje em dia é muito comum utilizar uma API de logging de mensagens como o Log4j para indicar os comportamentos de uma aplicação.

Hoje em dia é muito comum utilizar uma API de logging de mensagens como o Log4j para indicar os comportamentos de uma aplicação. Introdução Hoje em dia é muito comum utilizar uma API de logging de mensagens como o Log4j para indicar os comportamentos de uma aplicação. O Log4j é um é um projeto open source distribuído pela Apache

Leia mais

UFG - Instituto de Informática

UFG - 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 3 Invocação de Objetos

Leia mais

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

MAC-0462 Padrões arquiteturais para sistemas baseados em componentes reconfiguráveis MAC-0462 Padrões arquiteturais para sistemas baseados em componentes reconfiguráveis Microkernel Service Locator Dependency Injection Exemplo Classe Auditor Salva registros de eventos no banco de dados

Leia mais

Java Web/UI. Maven3 Redmine CVS. Áreas de conhecimento: Web o Aplicativos Web o Portal de conteúdo o REST Services Web Site Performance

Java Web/UI. Maven3 Redmine CVS. Áreas de conhecimento: Web o Aplicativos Web o Portal de conteúdo o REST Services Web Site Performance Java Web/UI Atribuições do cargo: Desenvolvimento de um Portal/Aplicativo Web de conteúdo público utilizando HTML5+CSS3+JS de design responsivo usando a Web API do portal de transparência como provedora

Leia mais

Construção de novas Classes em Java. Classes Atributos Métodos Herança...

Construção de novas Classes em Java. Classes Atributos Métodos Herança... Construção de novas Classes em Java Classes Atributos Métodos Herança... 1 Exemplo Representação em UML Java (Unified Modeling Language) Stack items : Vector Stack( ) push( ) pop( ) isempty( ) finalize(

Leia mais

SCE-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 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 mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro. Cartão de fidelização de clientes das distribuidoras de combustível.

Programação Orientada a Objectos - P. Prata, P. Fazendeiro. Cartão de fidelização de clientes das distribuidoras de combustível. Caso de estudo O cartão fidelidade Cartão de fidelização de clientes das distribuidoras de combustível. Definição em JAVA da classe CartaoFidelidade, que deverá apresentar uma funcionalidade semelhante

Leia mais

O que é um framework?

O que é um framework? O que é um framework? Um framework, ou arcabouço, em desenvolvimento de software, é uma abstração que une códigos comuns entre vários projetos de software provendo uma funcionalidade genérica. (Wikipedia)

Leia mais

EJB 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 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 mais

Oportunidades em SP. Experiência no mercado financeiro / instituições bancárias / produtos de tesouraria.

Oportunidades em SP. Experiência no mercado financeiro / instituições bancárias / produtos de tesouraria. Oportunidades em SP Analista Funcional Júnior CÓDIGO: Funcional Jr. Local: Itaim Bibi/SP Experiência no mercado financeiro / instituições bancárias / produtos de tesouraria. Experiência com documentação

Leia mais

Java Server Faces 2.0 Rich Faces 4.0

Java Server Faces 2.0 Rich Faces 4.0 DEPARTAMENTO DE INFORMÁTICA - DI Java Server Faces 2.0 Rich Faces 4.0 Quais as novidades e alterações nas novas versões das tecnologias? Pablo Bruno de Moura Nóbrega Analista de Sistemas pablo.nobrega@uece.br

Leia mais

PATR IMÔNIO PALEONTOLÓG IC O

PATR IMÔNIO PALEONTOLÓG IC O PATR IMÔNIO PALEONTOLÓG IC O O s depós itos fos s ilíferos, o s s ítios paleontológ icos (paleobiológicos ou fossilíferos) e o s fós s eis q u e a p r e s e n ta m valores científico, educativo o u cultural

Leia mais

SOA Introdução. SOA Visão Departamental das Organizações

SOA Introdução. SOA Visão Departamental das Organizações 1 Introdução A Organização é a forma pela qual nós coordenamos nossos recursos de todos os tipos para realizar o trabalho que nos propusemos a fazer. A estrutura de nossas organizações manteve-se basicamente

Leia mais

OPORTUNIDADES CWI: Analista de Sistemas Sênior

OPORTUNIDADES CWI: Analista de Sistemas Sênior OPORTUNIDADES CWI: Analista de Sistemas Sênior - Experiência em levantamento de requisitos. - Elaboração de especificação funcional. - Desejável conhecimento em logística e transporte. Analista de Testes

Leia mais

Desenvolvimento Web com Framework Demoiselle versão 1.0

Desenvolvimento 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 mais

XML e Banco de Dados. Prof. Daniela Barreiro Claro DCC/IM/UFBA

XML e Banco de Dados. Prof. Daniela Barreiro Claro DCC/IM/UFBA XML e Banco de Dados DCC/IM/UFBA Banco de Dados na Web Armazenamento de dados na Web HTML muito utilizada para formatar e estruturar documentos na Web Não é adequada para especificar dados estruturados

Leia mais

Computação Paralela. Uma framework para aplicações concorrentes João Luís Ferreira Sobral Departamento do Informática Universidade do Minho

Computação Paralela. Uma framework para aplicações concorrentes João Luís Ferreira Sobral Departamento do Informática Universidade do Minho Computação Paralela Uma framework para aplicações concorrentes João Luís Ferreira Sobral Departamento do Informática Universidade do Minho Dezembro 2005 Fases de desenvolvimento de aplicações paralelas

Leia mais

RestFull WebServices. Rafael Nunes Arquiteto de Software / Instrutor Globalcode. Globalcode Open4Education

RestFull 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 mais

Frameworks - Grails. Aécio Costa

Frameworks - Grails. Aécio Costa Aécio Costa Abstração que une códigos comuns entre vários projetos de software provendo uma funcionalidade genérica. Framework é um conjunto de classes que colaboram para realizar uma responsabilidade

Leia mais

Web Services utilizando JAX-WS

Web Services utilizando JAX-WS Web Services utilizando JAX-WS JAX-WS Facilitar o uso da API JAX-RPC e do modelo de implantação Anotações baseados em JSR-181 Exemplo Básico: Anotações: @WebService @WebMethod @WebParam @WebResult Exemplo

Leia mais

.', HGFEDCBA. M e u s c o m p a n h e iro s e m in h a s c o m p a n h e ira s. M e u s a m ig o s e m in h a s a m ig a s.

.', HGFEDCBA. M e u s c o m p a n h e iro s e m in h a s c o m p a n h e ira s. M e u s a m ig o s e m in h a s a m ig a s. . ---,,,",jihgfedcbazyxwvutsrqponmlkjihgfedcba ".',.;. " f.,..~~' D is c u r s o p r e f e it o M a r c e lo D é d a S O L E N I D A D E D E L A N Ç A M E N T O D A S P U B L I C A Ç Õ E S D O P L A N

Leia mais

Gestão e Tratamento de Informação 1º semestre

Gestão e Tratamento de Informação 1º semestre DepartamentodeEngenhariaInformática 2010/2011 GestãoeTratamentodeInformação1ºsemestre Laboratório6 Exercícios Nesta aula de laboratório iremos resolver exercícios relacionados com extracção de informaçãoeprocessamentodedocumentostextuais.

Leia mais