Estrutura e Configuração de Projetos com Flowable

O Flowable é uma plataforma open source para gerenciamento de processos de negócios (BPM). Este guia aborda a estrutura típica de um projeto Flowable, incluindo diretórios, scripts de inicialização e configurações essenciais.

Organização de Diretórios do Projeto

Um projeto Flowable padrão segue uma estrutura de diretórios bem definida:

.
├── documentacao              # Recursos de documentação
│   ├── conf.py               # Arquivo de configuração do Sphinx
│   ├── principal.rst         # Documento principal
│   └── ...
├── fonte-flowable            # Código-fonte do Flowable
│   ├── bin                   # Scripts para iniciar o sistema
│   ├── lib                   # Bibliotecas de dependência
│   ├── src                   # Código-fonte do projeto
│   └── ...
├── utilitarios               # Scripts auxiliares
│   ├── bd                    # Operações de banco de dados
│   ├── deploy                # Processos de implantação
│   └── ...
└── README.md                 # Descrição do projeto

A pasta documentacao contém todos os materaiis de documentação, gerados com a ferramenta Sphinx.

Dentro de fonte-flowable, encontra-se o código-fonte do Flowable, incluindo scripts de execução, bibliotecas e arquivos de desenvolvimento.

A pasta utilitarios armazena scripts para inicialização de banco de dados, implantação e outras tarefas de suporte.

O arquivo README.md oferece uma visão geral do projeto e instruções para configuração inicial.

Scripts de Inicialização do Sistema

No diretório fonte-flowable/bin, estão disponíveis scripts para lançamento do Flowable:

  • executar.sh: Script para Linux ou macOS que inicia o serviço Flowable.
  • executar.bat: Comando em lote para sistemas Windows.

Esses scripts configuram variáveis de ambiente, carregam dependências e invocam a máquina virtual Java para ativar o motor Flowable.

Um exemplo simplificado do script executar.sh:

#!/bin/bash
export CAMINHO_FLOWABLE=/opt/flowable
cd $CAMINHO_FLOWABLE
java -jar lib/flowable-engine.jar --server.port=8080

A variável CAMINHO_FLOWABLE indica o local de instalação, enquanto flowable-engine.jar é o arquivo principal para execução.

Configurações do Motor Flowable

O comportamento do Flowable é controlado pelo arquivo flowable.cfg.xml, geralmente localizado em fonte-flowable/conf ou definido em tempo de execução. Configurações importantes incluem:

  • databaseType: Tipo de banco de dados, como mysql, postgres ou h2.
  • jdbcUrl: Endereço de conexão com o banco de dados.
  • jdbcDriver: Classe do driver JDBC utilizado.
  • jdbcUsername: Usuário para autenticação no banco.
  • jdbcPassword: Senha correspondente ao usuário.
  • databaseSchemaUpdate: Define se o esquema do banco deve ser atualizado automaticamente (true ou false), útil durante instalações ou upgrades.

Exemplo de configuração em XML:

<?xml version="1.0" encoding="UTF-8"?>


<beans>
    <bean id="configProcessEngine" class="org.flowable.engine.impl.cfg.StandaloneProcessEngineConfiguration">
        <property name="databaseType" value="postgres"/>
        <property name="jdbcUrl" value="jdbc:postgresql://localhost:5432/flowable_db"/>
        <property name="jdbcDriver" value="org.postgresql.Driver"/>
        <property name="jdbcUsername" value="admin"/>
        <property name="jdbcPassword" value="s3nh4"/>
        <property name="databaseSchemaUpdate" value="true"/>
    </bean>
</beans>

Ao integrar com Spring Boot, as configurações podem ser movidas para um arquivo application.yml no diretório src/main/resources.

Esta estrutura é comum em projetos Flowable, mas ajustes específicos podem ser necessários dependendo do ambiente.

Tags: Flowable BPM Configuração de Banco de Dados Spring Boot XML

Publicado em 6-1 17:55 por Thomas