微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

camel-drools-webservices

https://github.com/alesaudate/camel-drools-webservices/tree/master/src/main


https://github.com/alesaudate/camel-workshop



Workshop Camel

Pré requisitos

  • JDK 1.6+
  • Eclipse com plugin m2e
  • @H_502_29@

    Preparação

    Abra o Eclipse,vá até Window -> Preferences -> Maven -> Archetypes. Clique em Add Remote Catalog e adicione o arquivo https://repository.apache.org/content/groups/snapshots-group ,com qualquer descrição. Clique em OK duas vezes (uma para fechar a caixa de adição de diálogos e outra para fechar o menu Window).

    Criando o projeto

    Crie um novo projeto,no Eclipse,utilizando o wizard de projeto Maven (Maven Project). Na caixa de criação de projetos,certifique-se de NÃO marcar a caixa "Create a simple project (skip archetype selection)". Clique em next. Na caixa de filtragem de arquétipos,digite "Camel" e aguarde o Eclipse realizar a filtragem. Assim que ele terminar,selecione o arquétipo camel-archetype-war. Coloque o group Id e o artifact Id como for de sua preferência e clique em Finish.

    Rodando o projeto

    Abra o arquivo pom.xml,na raiz do projeto,e localize a tag camel-version. Atualize o conteúdo para 2.10.0. Clique com o botão direito em cima do projeto recém-criado e selecione Run As -> Maven Build... . Na caixa que abrir,coloque como goals clean jetty:run. Na aba JRE,adicione a seguinte diretiva: "-XX:MaxPermSize=256M" (sem as aspas) e clique em Run. O Camel será inicializado utilizando um contêiner Jetty embutido.

    Entendendo o que está sendo feito

    Esse projeto está configurado para inicializar duas rotas do Camel: uma,que lê arquivos de uma pasta (que está,a partir da raiz do projeto,em src/data) e imprime o conteúdo na saída padrão do sistema,ao mesmo tempo que manda para uma fila do ActiveMQ (a saber,personnel.records). A segunda rota consome essas mensagens e faz um teste,baseado em XPath,para descobrir em que pasta deve salvar o registro consumido. Se a cidade for London,salva (a partir da raiz do projeto) em target/messages/uk. Caso contrário,salva em target/messages/others.

    Além disso,tudo isso é publicado em um console web (acessado em http://localhost:8080/) e por uma API Rest,cuja documentação pode ser enconTrada em http://localhost:8080/api.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐