Apache Camel – Tutorial para iniciantes

apache-camel-logo

Apache Camel é uma implementação open source dos famosos Enterprise Integration Patterns. Camel é um motor de Roteamento e Mediação que facilita o vida dos desenvolvedores na criação e mediação de regras em uma variedade imensa de linguagens (DSL) como Java, Spring/XML, Scala etc.

Neste tutorial pretendo explorar com um exemplo simples o funcionameto do Apache Camel, onde uma classe envia mensagens para uma fila ActiveMQ (origemQueue) e Camel as roteia para outra fila ActiveMQ (destinoQueue).

Rota

Resumidamente uma rota é a ligação entre dois endpoints e um processador.

Como escrever uma rota

Podemos escrever uma rota de duas formas:

  • Código Java (DSL Java) através de API fornecida por Camel
  • XML

Enviando mensagens para uma fila ActiveMQ


 import javax.jms.Connection;
 import javax.jms.MessageProducer;
 import javax.jms.Queue;
 import javax.jms.Session;
import org.apache.activemq.ActiveMQConnectionFactory;
public class ProducerTeste {
public static void main(String[] args) throws Exception {
ActiveMQConnectionFactory factory = new ActiveMQConnectionFactory("failover:(tcp://localhost:61616)?timeout=1000");
Connection connection = factory.createConnection("admin", "admin");
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
 connection.start();
 Queue queue = session.createQueue("origemQueue");
 MessageProducer producer = session.createProducer(queue);
for (int i = 0; i < 100000; i++) {
producer.send(session.createTextMessage(i + " message"));
 System.out.println("Sent message " + i);
 // Thread.sleep(1000);
 }
 producer.close(); session.close(); connection.close();
 }
 }

Roteamento das mensagens com Camel

 import javax.jms.ConnectionFactory;
 import org.apache.activemq.ActiveMQConnectionFactory;
 import org.apache.camel.CamelContext;
 import org.apache.camel.ProducerTemplate;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.jms.JmsComponent;
 import org.apache.camel.impl.DefaultCamelContext;
public final class CamelProducer {
public static void main(String args[]) throws Exception {
 CamelContext context = new DefaultCamelContext();
ConnectionFactory factory = new ActiveMQConnectionFactory("admin", "admin", "failover:(tcp://localhost:61616)?timeout=1000");
context.addComponent("test-jms", JmsComponent.jmsComponentAutoAcknowledge(factory));
 context.addRoutes(new RouteBuilder() {
 public void configure() {
 from("test-jms:queue:origemQueue").to("test-jms:queue:destinoQueue");
 }
 });
ProducerTemplate template = context.createProducerTemplate();
 context.start();
 for (int i = 0; i < 1000000; i++) {
 template.sendBody("test-jms:queue:destinoQueue", "Test Message: " + i);
 System.out.println("Sent message " + i);
}
Thread.sleep(1000);
 context.stop();
 }
 }

Projeto

Download do projeto completo >>>aqui<<<


JUDCon 2014:Brazil – Confira as Novidades que Preparamos para este Ano!

AA168-1479_JUDCON-2014_Cervejada


Última chamada para chamada de trabalhos para o JUDCon Brasil 2014

judcon2014brazil_banner_1180px_en_cfp

A Red Hat, fornecedora líder mundial de soluções de código aberto, anuncia a abertura das chamadas de trabalho para a segunda edição da JBoss Users&Developers Conference (JUDCon Brasil 2014), que acontece no dia 26 de setembro, em São Paulo.

A JBoss Users&Developers Conference é um evento de porte internacional feito “Por Desenvolvedores, Para Desenvolvedores” e que reunirá a comunidade entusiasta da tecnologia JBoss open source do mundo com os principais líderes da Jboss.org. O encontro é a oportunidade para aprender, ensinar, trocar experiências e discutir tendências, apresentar projetos e colaborar com a comunidade.

Interessados em apresentar projetos devem preencher um formulário no site do evento (http://www.jboss.org/pt_BR/events/JUDCon/2014/brazil/cfp) até o dia 29 de agosto. As submissões devem ser feitas em inglês.

O JUDCon Brasil 2014 é também a oportunidade que os desenvolvedores locais têm de se aproximar dos criadores e principais engenheiros mundiais da Red Hat, que trabalham nos produtos de portfolio de Middleware, tirar dúvidas, trocar experiências e procurar soluções inovadoras por meio das tecnologias de JBoss.

Agenda

Chamadas de trabalho: Até 22 de agosto 27 de agosto

Divulgação dos selecionados: 1 de setembro

Evento: JUDCon Brasil 2014 

Data: 26 de setembro 

Local: Rua das Olimpiadas, 205, São Paulo- SP 

Site do evento: http://www.jboss.org/pt_BR/events/JUDCon/2014/brazil.html 

 


Livro: Play Framework: Java para web sem Servlets e com diversão

É com grande satisfação que venho ajudar a divulgar o último livro dum grande ex-colega de trabalho, Fernando Boaglio. Neste novo trabalho ele ensina de forma simples e didática a utilização do Framework Play desde tarefas básicas às mais complexas, de forma extremamente produtiva.

Play-ebooks_large

Desenvolver sistemas web em Java nunca foi tão divertido! Se você está cansado de escrever longas Servlets, ficar brigando com seu framework o tempo inteiro para realizar tarefas simples e escrevendo mais código que o necessário para desenvolver qualquer funcionalidade, o Play Framework é o que você precisa.

Nesse livro, Fernando Boaglio ensina como criar uma aplicação do começo ao fim utilizando o Play Framework na versão Java, passando por situações comuns do dia a dia, indo desde o tradicional cadastro, até funcionalidades mais avançadas como habilitação de HTTPS, login integrado com redes sociais e integração com serviços REST. Você vai aprender como o Play Framework pode te tornar extremamente produtivo.

Boa leitura!


Dispositivos móveis: a interface com o mundo

Republicação de Boris Kuszka:

Todos vocês já devem ter se deparado com as estatísticas mais recentes de queda de venda de PCs (desktops) com a vinda de telefones inteligentes (smartphones), tablets, híbridos de tablet e smartphone, Ultrabooks, e-readers com acesso à internet, etc. Isso é na verdade o que a indústria está definindo no meio corporativo de BYOD (Bring Your Own Device, ou traga o seu próprio dispositivo), ou seja, você escolhe a forma como quer acessar os seus aplicativos: usar seu banco, comprar ingressos, fazer compras em geral e até mesmo acessar os sistemas da empresa em que trabalha com o seu dispositivo móvel.
O acesso via dispositivos móveis pode ser analisado por meio de duas visões: a corporativa e a privada. Apesar do dispositivo ser o mesmo que você usa para acessar sua empresa e seus dados pessoais, as formas como isso se desenvolveu em cada um dos casos foram bem distintas.

39794.56852-no-celular
A visão corporativa

Como chegamos no BYOD? Vale voltarmos alguns anos para revermos como isso evoluiu e como isso impacta em termos de inovação.

Nos anos 60 até 80, na era dos mainframes, o acesso era feito por meio dos terminas síncronos, de tamanho e peso gigantescos, normalmente de fósforo verde, sem gráficos. Todo processamento era centralizado no data center, o que permitia um controle total para quem administra os sistemas, mas com pouquíssima flexibilidade. Se por qualquer razão você precisasse acessar qualquer sistema, tinha que correr para o escritório/fábrica e chegar ao terminal para acessar os aplicativos da empresa.

No final dos anos 80, surgiram os equipamentos baseados em processador RISC e sistema operacional UNIX, e foi aí que começou a era do downsizing, que foi a migração do mainframe para equipamentos baseados em padrões abertos, os chamados “Open Systems”, principalmente por razões de custos e possibilidade de ficar um pouco menos dependente do fabricante; afinal de contas, o UNIX prometia uma plataforma aberta e intercambiável, coisa que nunca aconteceu em sua plenitude. E esforços de migração entre UNIX continuam ocorrendo até hoje. Nessa época, o acesso era feito por terminais assíncronos, o que pelo menos nos dava a opção de acesso via MODEM (acesso pela linha telefônica) e assim, de forma ainda mais interessante, começou uma nova arquitetura computacional chamada de cliente-servidor, na qual o acesso era feito por um PC – uma parte da aplicação rodava nesse PC e outra no servidor.

Isso durou até o final dos anos 90, quando veio a internet, a plataforma Java (rode seu aplicativo de qualquer dispositivo, de qualquer lugar, com segurança” dizia o slogan do Java, coisa que em larga escala efetivamente começamos a ver hoje em dia). O famoso slogan da falecida Sun Microsystems finalmente começou a fazer sentido: “a rede é o computador”. Arquiteturas novas que permitiam acessar os servidores do data center via navegadores (na época tínhamos principalmente o Netscape e o Internet Explorer) e, para os sistemas legados, havia o acesso via VDI (desktop virtual) em que você mostrava a tela do aplicativo via outros dispositivos, como PCs, “thin clients” e, com algumas restrições, celulares.

Boris Kuszka é o Diretor dos Arquitetos de Solução da Red Hat. Possui 22 anos de experiência em tecnologia da informação, sempre atuou na área de Open Systems passando por empresas como IBM, Sun Microsystems, Nokia, Oracle, HP e NetApp. É formado em Engenharia Eletrônica pela Politécnica/USP e especializado em diversos cursos e treinamentos na área de TI.

Matéria completahttp://corporate.canaltech.com.br/coluna/mobile/Dispositivos-moveis-a-interface-com-o-mundo/ 


IT Forum Expo / Black Hat

it_forum

Nos dias 26 e 27 de novembro de 2013, o Transamerica Expo Center receberá o IT Forum Expo / Black Hat, uma feira focada para a área de TI e Segurança da Informação da América Latina. Fruto da parceria entre a IT Midia e a UBM Brazil, o IT Forum Expo / Black Hat promoverá, em dois dias de evento, um ambiente para geração de grandes negócios, networking e conteúdo de qualidade.

A feira irá atrair um público estimado de 3.000 visitantes altamente qualificados – CIOs, CMO’s, CFO’s, gerentes de TI e CSOs pertencentes às empresas de grande e médio porte dos setores que mais investem em tecnologia da informação, e que fazem parte do processo decisório na aquisição de produtos e serviços de TI.

A Red Hat esteve lá para receber os visitantes interessados em saber mais informações sobre os produtos e soluções.

IMG-20131127-WA0001

Novas tendências, tecnologias e materiais.

O IT Forum Expo / Black Hat contará com uma área de exposição onde os principais fornecedores de produtos, serviços e tecnologias apresentarão na prática as novas soluções e tendências do setor.

IMG-20131127-WA0008

Parcerias e Oportunidades.

Com um público altamente qualificado de visitantes e expositores focado no fortalecimento do setor, é a melhor oportunidade para se relacionar e realizar negócios com quem decide e influencia os rumos do mercado e conhecer as melhores práticas e processos na TI e Segurança da Informação

IMG-20131127-WA0005

Informação e Conteúdo de qualidade.

Simultaneamente a exposição, o IT Forum Expo / Black Hat apresentará dois programas paralelos de conteúdo: o IT Forum Expo Conference e o Black Hat Regional Summit São Paulo:

- IT Forum Expo Conference – programa de conteúdo completo, com renomados Keynote Speakers, conferências para apresentação de casos práticos, novas soluções e discussão sobre os principais desafios do setor.

- Black Hat Regional Summit São Paulo – a maior feira de segurança da informação do mundo – apresentará, em sua primeira edição no Brasil, programas de conferências, palestras e treinamentos práticos de altíssima qualidade técnica, realizados pelos especialistas mais respeitados do Brasil e do mundo, que também participam do Black Hat dos outros países, promovendo o compartilhamento de ideias práticas, conhecimentos e novas tendências do mundo de segurança digital.


Computação em Nuvem: como adotá-la sem ressalvas?

Republicação de Boris Kuszka:

25487.52550-cloud-computing

A computação em nuvem não é mais apenas um termo da moda. É como a TI resolve problemas de negócios. É a tecnologia que, se utilizada de forma correta, proporciona análises profundas da utilização dos seus recursos, com um gerenciamento abrangente, baixando os custos de TI e aumentando assim a produtividade.

Pela definição do National Institute of Standards and Technology (NIST), órgão sempre citado em definições de tecnologias, a computação em nuvem precisa ter autoatendimento, acesso pela rede banda larga para um conjunto de recursos que tenham elasticidade (capacidade de aumentar e diminuir o poder de processamento) e ser mensurável. A ideia principal é abstrair a infraestrutura computacional onde se possa consumi-la, pagando-se conforme o uso. A analogia mais utilizada com computação em nuvem é o fornecimento de energia elétrica: muito simples de utilizar e paga-se exatamente o que se consome.

Essa definição, em minha opinião, está incompleta. Mas, o que está inibindo a utilização maciça da computação em nuvem? Na verdade não somente um, mas vários fatores: segurança, compatibilidade com normas (compliance), interoperabilidade e medo de ficar preso a um determinado fornecedor.

Matéria completahttp://corporate.canaltech.com.br/coluna/cloud-computing/Computacao-em-Nuvem-como-adota-la-sem-ressalvas/#ixzz2lHntmWPM 


Seguir

Obtenha todo post novo entregue na sua caixa de entrada.

Junte-se a 26 outros seguidores