Name Last Update
src Loading commit data...
.classpath Loading commit data...
.gitignore Loading commit data...
.gitmessage Loading commit data...
.project Loading commit data...
.tern-project Loading commit data...
README.md Loading commit data...
apidoc.json Loading commit data...
pom.xml Loading commit data...

README.md

SEI-Broker - Camada REST de acesso ao SEI

O SEI-Broker é uma camada de integração que foi desenvolvida para integrar os sistemas corporativos da ANS e o SEI, Sistema Eletrônico de Informações do TRF 4. Toda essa camada foi criada utilizando o padrão RESTful de serviços web, sua função é facilitar a integração dos sistemas da ANS com o SEI, utilizando um protocolo mais simples, moderno e performático. A adoção do broker nos permite criar uma camada de abstração para evitar que mudanças no SEI afetem as integrações, isso é possível pelo fato do broker utilizar REST e possuir contrato fraco.

O Broker atualmente está na versão 2.9, essa versão é compatível com o SEI 3.0.13. É importante destacar que é necessário atualizar o SEI-Broker a cada atualização do SEI que altere os serviços web.

Alguns serviços adicionais foram desenvolvidos para extrair dados que não são ofertados pelos serviços nativos do SEI, estes serviços fazem acesso a base de dados do SEI e realizam operações apenas de consulta. A escrita de dados continua a ser exclusividade dos serviços nativos, desta forma a integridade e coerência das inserções é mantida.

Requisitos

Procedimentos para instalação

Configure as propriedades dos datasources no JBoss, elas são declaradas como System Properties.

O broker possui dois datasources e ambos estão declarados no arquivo sei-broker-ds.xml, eles são identificados como jdbc/sei-broker e jdbc/sei-mysql. O jdbc/sei-broker foi definido para acessar as tabelas que foram projetadas para o broker, o jdbc/sei-mysql se conecta ao banco de dados do SEI.

Chave Valor
br.gov.ans.seiBroker.db.oracle.connectionUrl String de conexão com o banco Oracle
br.gov.ans.seiBroker.db.oracle.password Senha do usuário utilizado no datasource
br.gov.ans.seiBroker.db.mysql.connectionUrl String de conexão com o banco MySQL do SEI
br.gov.ans.seiBroker.db.mysql.user Nome usuário com acesso ao MySQL do SEI
br.gov.ans.seiBroker.db.oracle.password Senha do usuário com acesso ao MySQL do SEI

Abaixo um exemplo de declaração de propriedades feita no arquivo standalone.xml.

<!-- Geralmente no início do arquivo, após as extensions -->
<system-properties>
    <!-- Outras propriedades ... -->
    <property name="br.gov.ans.seiBroker.db.oracle.connectionUrl" value="STRING_CONEXAO_BD_BROKER"/>
    <property name="br.gov.ans.seiBroker.db.oracle.password" value="SENHA_USUARIO_SEI_BROKER"/>
    <property name="br.gov.ans.seiBroker.db.mysql.user" value="USUARIO_MYSQL"/>
    <property name="br.gov.ans.seiBroker.db.mysql.connectionUrl" value="STRING_CONEXAO_BD_SEI"/>
    <property name="br.gov.ans.seiBroker.db.mysql.password" value="SENHA_USUARIO_BD_SEI"/>
</system-properties>

Criar e configurar os arquivos de propriedades no JBoss

O SEI-Broker faz uso de dois arquivos de propriedades que ficam na pasta <JBOSS_HOME>\ans\properties, os arquivos necessários são services.properties e ws-users.properties.

Arquivo Propriedade Descrição services.properties sei.ws.uri URL do SEI sip.ws.uri URL do SIP templates.broker.uri URL do templates-broker ws-users.properties sei.broker.user Usuário de integração do broker sei.broker.password Senha do usuário de integração

Criar security-domain no JBoss

É necessário que haja um security-domain registrado com o nome ans-ws-auth, o mesmo pode utilizar um banco de dados<sup>1</sup> ou o LDAP. É importante destacar que o Broker trabalha com autorização baseada em papéis(RBAC<sup>2</sup>) e que os usuários precisam ter seus papéis atribuídos.

Implantar pacote gerado pelo Maven

Após a realização de todos os passos anteriores, teremos o JBoss pronto para receber o pacote do SEI-Broker. O deploy pode ser feito de diversas maneiras e não é o foco desse manual.

Para essa etapa é necessário ter o Maven instalado e configurado. Ao realizar o primeiro build devemos desabilitar os testes automatizados, os testes dependem de uma instância ativa e impedirão a geração do pacote.

Configurar Sistema no SEI

É preciso cadastrar o SEI-Broker como um sistema que se integrará ao SEI, conforme manual de webservices do SEI. É importante ter atenção para a sigla quer será definida, por padrão o broker está configurado para utilizar a sigla SEI-Broker.

Após o cadastro do Sistema precisaremos atribuir os serviços que serão utilizados pelo Broker, nesta etapa é preciso ter atenção para o valor que será definido no campo identificação e aos servidores. A identificação do serviço precisa ser enviada a cada requisição feita aos serviços do SEI, por padrão o Broker utiliza o valor REALIZAR_INTEGRACAO. No campo servidores informaremos os IPs dos servidores onde o SEI-Broker estará implantado.

Os valores utilizados pelo Broker podem ser configurados na classe Constantes, sigla e identificação são respectivamente SIGLA_SEI_BROKER e CHAVE_IDENTIFICACAO.