19
Conectando jBPM com o Mundo Explorando a API REST do BPM da comunidade JBoss

Conectando jBPM com o mundo - TDC 2014 SP

Embed Size (px)

DESCRIPTION

Apresentação para o TDC 2014 de São Paulo sobre a API REST do jBPM, ou BPMS (produto da Red Hat) e demonstração de uma aplicação em JavaFX que acessa essa API.

Citation preview

Page 1: Conectando jBPM com o mundo - TDC 2014 SP

Conectando jBPM com o MundoExplorando a API REST do BPM da comunidade JBoss

Page 2: Conectando jBPM com o mundo - TDC 2014 SP

== AVISO ==

“Este é uma apresentação pessoal. As opiniões aqui expressadas são de única responsabilidade minha, e nada referem-se as da empresa para qual trabalho.”

Page 3: Conectando jBPM com o mundo - TDC 2014 SP

Sobre Willim Antônio Siqueira* Formado na FATEC de SJC, trabalha 6 anos na área de TI* 4 Anos com Java* Trabalha no Suporte da Red Hat* Comunidade JavaFX* Um dos líderes do JUG-Vale* aprendendo-javafx.blogspot.com

Page 4: Conectando jBPM com o mundo - TDC 2014 SP

O que vamos ver hoje?

● O que é BPM?● jBPM: O BPM da comunidade JBoss● O que pode ser feito com REST● REST/RPC: Executando comandos● API Java para facilitar a vida● Outras possibilidades de acesso remoto

Page 5: Conectando jBPM com o mundo - TDC 2014 SP

BPM

Business process management (BPM) is a management discipline that focuses on improving corporate performance by managing and optimising a company's business processes. It can therefore be described as a "process optimization process." It is argued that BPM enables organizations to be more efficient, more effective and more capable of change than a functionally focused, traditional hierarchical management approach.

Fonte: http://en.wikipedia.org/wiki/Business_process_management

Page 6: Conectando jBPM com o mundo - TDC 2014 SP

BPMNA standard Business Process Model and Notation (BPMN) will provide businesses with the capability of understanding their internal business procedures in a graphical notation and will give organizations the ability to

communicate these procedures in a standard manner.

Fonte: http://bpmn.org/

Page 7: Conectando jBPM com o mundo - TDC 2014 SP

Exemplo da Pizza

Fonte: http://www.businessprocessincubator.com/the-pizza-collaboration.html

Page 8: Conectando jBPM com o mundo - TDC 2014 SP

Por que BPM?

● Visibilidade● Monitoramento● Melhoria contínua● Visão de alto level do processo● Se implementado corretamente, agiliza a

execução de processos

Page 9: Conectando jBPM com o mundo - TDC 2014 SP

Como aplicar BPM de forma eficaz?

Usando uma boa ferramenta ^_^

Page 10: Conectando jBPM com o mundo - TDC 2014 SP

jBPM: O BPM da comunidade JBoss

● Open Source (as usual);● Ferramenta WEB ou usando Eclipse;● Integração com JTA, Hibernate, Seam, Spring….● Console de gerenciamento suporta tarefas, processos, geração de

gráficos, histórico de execuções, versionamento, etc;● Repositório de processos usando “git”.● Facilidade de integração via REST, JMS e outros.

Page 11: Conectando jBPM com o mundo - TDC 2014 SP

Uma tarefa simples com jBPM

Passos:● Criar Organização● Criar Repositório● Criar Projeto● Criar Processo● Fazer Build&Deploy (cria deployment)● Criar Instância do Processo● Pronto!

Mais: http://www.jbpm.org/blog/2014/05/09/DeepDiveIntoJBPM6Video.html

Page 12: Conectando jBPM com o mundo - TDC 2014 SP

jBPM

~DEMO~

Page 13: Conectando jBPM com o mundo - TDC 2014 SP

A API REST

Permite: ● Listar e gerenciar tarefas● Listar e gerenciar repositórios● Ver histórico de chamadas REST● Gerenciar deployments

Resumo: https://access.redhat.com/documentation/en-US/Red_Hat_JBoss_BPM_Suite/6.0/html/Development_Guide/URL_layout.html

Page 14: Conectando jBPM com o mundo - TDC 2014 SP

A API REST: Tasks

Page 15: Conectando jBPM com o mundo - TDC 2014 SP

A API REST: Runtime

Mais: http://localhost:8080/business-central/rest-api.jsp

Page 16: Conectando jBPM com o mundo - TDC 2014 SP

Comunicando com o jBPM só com Java

jBPM vem com um “Wrapper” pronto em java:

Page 17: Conectando jBPM com o mundo - TDC 2014 SP

Demo: Uma aplicação JavaFX

Fonte: https://github.com/jesuino/drools-jbpm-client-app

Page 18: Conectando jBPM com o mundo - TDC 2014 SP

Java, mas REST

WEB-INF/jboss-web.xml

<jboss-web> <valve> <class-name>org.apache.catalina.valves.RequestDumperValve</class-name> </valve></jboss-web>

Page 19: Conectando jBPM com o mundo - TDC 2014 SP

Obrigado

@william_antoniogithub.com/jesuinoaprendendo-javafx.blogspot.comfxapps.blogspot.com