conectando jbpm com o mundo - tdc 2014 sp
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.TRANSCRIPT
Conectando jBPM com o MundoExplorando a API REST do BPM da comunidade JBoss
== 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.”
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
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
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
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/
Exemplo da Pizza
Fonte: http://www.businessprocessincubator.com/the-pizza-collaboration.html
Por que BPM?
● Visibilidade● Monitoramento● Melhoria contínua● Visão de alto level do processo● Se implementado corretamente, agiliza a
execução de processos
Como aplicar BPM de forma eficaz?
Usando uma boa ferramenta ^_^
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.
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
jBPM
~DEMO~
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
A API REST: Tasks
A API REST: Runtime
Mais: http://localhost:8080/business-central/rest-api.jsp
Comunicando com o jBPM só com Java
jBPM vem com um “Wrapper” pronto em java:
Demo: Uma aplicação JavaFX
Fonte: https://github.com/jesuino/drools-jbpm-client-app
Java, mas REST
WEB-INF/jboss-web.xml
<jboss-web> <valve> <class-name>org.apache.catalina.valves.RequestDumperValve</class-name> </valve></jboss-web>
Obrigado
@william_antoniogithub.com/jesuinoaprendendo-javafx.blogspot.comfxapps.blogspot.com